Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. VOXL Dev Drones
  3. Sentinel
  4. GPS not working

GPS not working

Scheduled Pinned Locked Moved Sentinel
49 Posts 7 Posters 21.8k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Andre Moura
    Contributor
    wrote on last edited by
    #1

    Hello,

    I'm testing the sentinel drone for outdoor flight and we have no GPS data on QGroundControl.

    The light for GPS fixed is blinking, indicating that the sensor is getting signal and being fixed.

    This is the list of voxl-services running:

    image.png

    Some things that appear to be wrong:

    • NUTTX console is not responding to any commands, on QGC through Wi-Fi;

    • When I tried to upload the parameters file "voxl-4-params/params/v1.12/ekf2_outdoor_gps_mag.params" there were no problems, but I still have no GPS and when I tried to upload "voxl-4-params/params/v1.14/EKF2_helpers/outdoor_gps_baro.params" the following error appears in QGC: "Parameters are missing from firmware. (...) Missing params: 1:EKF2_EV_CTRL, 1:EKF2_GPS_CTRL, 1:EKF2_HGT_REF, 1:SYS_HAS_GPS".

    Would appreciate any help solving this issue. Thank you!

    Eric KatzfeyE 2 Replies Last reply
    0
    • A Andre Moura

      Hello,

      I'm testing the sentinel drone for outdoor flight and we have no GPS data on QGroundControl.

      The light for GPS fixed is blinking, indicating that the sensor is getting signal and being fixed.

      This is the list of voxl-services running:

      image.png

      Some things that appear to be wrong:

      • NUTTX console is not responding to any commands, on QGC through Wi-Fi;

      • When I tried to upload the parameters file "voxl-4-params/params/v1.12/ekf2_outdoor_gps_mag.params" there were no problems, but I still have no GPS and when I tried to upload "voxl-4-params/params/v1.14/EKF2_helpers/outdoor_gps_baro.params" the following error appears in QGC: "Parameters are missing from firmware. (...) Missing params: 1:EKF2_EV_CTRL, 1:EKF2_GPS_CTRL, 1:EKF2_HGT_REF, 1:SYS_HAS_GPS".

      Would appreciate any help solving this issue. Thank you!

      Eric KatzfeyE Offline
      Eric KatzfeyE Offline
      Eric Katzfey
      ModalAI Team
      wrote on last edited by
      #2

      @andremoura The VOXL2 version of PX4 is different than what you get on a standard Pixhawk style flight controller (e.g. flight core). On VOXL2 the implementation is split between the application processor (running Linux) and the Sensors DSP (Running Qualcomm's Qurt RTOS). So Nuttx is not used at all on VOXL2 PX4. However, there are still ways to interact with PX4 via the console.

      1 Reply Last reply
      0
      • A Andre Moura

        Hello,

        I'm testing the sentinel drone for outdoor flight and we have no GPS data on QGroundControl.

        The light for GPS fixed is blinking, indicating that the sensor is getting signal and being fixed.

        This is the list of voxl-services running:

        image.png

        Some things that appear to be wrong:

        • NUTTX console is not responding to any commands, on QGC through Wi-Fi;

        • When I tried to upload the parameters file "voxl-4-params/params/v1.12/ekf2_outdoor_gps_mag.params" there were no problems, but I still have no GPS and when I tried to upload "voxl-4-params/params/v1.14/EKF2_helpers/outdoor_gps_baro.params" the following error appears in QGC: "Parameters are missing from firmware. (...) Missing params: 1:EKF2_EV_CTRL, 1:EKF2_GPS_CTRL, 1:EKF2_HGT_REF, 1:SYS_HAS_GPS".

        Would appreciate any help solving this issue. Thank you!

        Eric KatzfeyE Offline
        Eric KatzfeyE Offline
        Eric Katzfey
        ModalAI Team
        wrote on last edited by Eric Katzfey
        #3

        @andremoura One way to interact with PX4 on VOXL2 is using PX4 command aliases. For example, if you want to run the command listener sensor_gps to see if the GPS unit is publishing GPS data then you could use an adb shell to enter the following command alias px4-listener sensor_gps and it will show you the latest published data from the GPS sensor or say never published.

        1 Reply Last reply
        0
        • A Offline
          A Offline
          Andre Moura
          Contributor
          wrote on last edited by
          #4

          I tested the "px4-listener sensor_gps" command, as you proposed and the output was "never published", even though the GPS is fixed.

          I also tried "px4-gps status" and got "INFO [gps] not running". Then I also tried px4-gps stop and start, but no difference in the status.

          Eric KatzfeyE 1 Reply Last reply
          0
          • A Andre Moura

            I tested the "px4-listener sensor_gps" command, as you proposed and the output was "never published", even though the GPS is fixed.

            I also tried "px4-gps status" and got "INFO [gps] not running". Then I also tried px4-gps stop and start, but no difference in the status.

            Eric KatzfeyE Offline
            Eric KatzfeyE Offline
            Eric Katzfey
            ModalAI Team
            wrote on last edited by
            #5

            @andremoura The GPS unit will come up and get a fix on it's own after it has been powered on so that doesn't indicate anything about the health of the connection to the flight controller. If the result of px4-listener sensor_gps is never published then there is likely a problem with your connection to the GPS unit. The GPS driver on VOXL2 runs on the DSP, not on the applications processor so you have to use qshell to interact with it. So, for status, you would use px4-qshell gps status. Have you made any changes to the Sentinel hardware or is it exactly the same as it was shipped?

            A Captain 7thC 3 Replies Last reply
            0
            • Eric KatzfeyE Eric Katzfey

              @andremoura The GPS unit will come up and get a fix on it's own after it has been powered on so that doesn't indicate anything about the health of the connection to the flight controller. If the result of px4-listener sensor_gps is never published then there is likely a problem with your connection to the GPS unit. The GPS driver on VOXL2 runs on the DSP, not on the applications processor so you have to use qshell to interact with it. So, for status, you would use px4-qshell gps status. Have you made any changes to the Sentinel hardware or is it exactly the same as it was shipped?

              A Offline
              A Offline
              Andre Moura
              Contributor
              wrote on last edited by Andre Moura
              #6

              @Eric-Katzfey The sentinel is as it was on arrival 2 days ago, no hardware changes.

              We ran px4-shell gps status and got:

              voxl2:~$ px4-qshell gps status
              INFO  [qshell] Send cmd: 'gps status'
              INFO  [qshell] qshell return value timestamp: 801929670, local time: 801931434
              
              Eric KatzfeyE 1 Reply Last reply
              0
              • A Andre Moura

                @Eric-Katzfey The sentinel is as it was on arrival 2 days ago, no hardware changes.

                We ran px4-shell gps status and got:

                voxl2:~$ px4-qshell gps status
                INFO  [qshell] Send cmd: 'gps status'
                INFO  [qshell] qshell return value timestamp: 801929670, local time: 801931434
                
                Eric KatzfeyE Offline
                Eric KatzfeyE Offline
                Eric Katzfey
                ModalAI Team
                wrote on last edited by
                #7

                @andremoura Okay, that's not very useful. Let's try something else. First of all can you post the contents of the file /etc/systemd/system/voxl-px4.service? Then, stop the service from autostarting voxl-px4 with the commands systemctl disable voxl-px4 and sync. Then reboot the drone. When you adb back in to the drone you can run voxl-inspect-services to verify that voxl-px4 isn't running. Then you can start voxl-px4 manually from the command line with voxl-px4 and then post all of the output from that.

                Captain 7thC 1 Reply Last reply
                0
                • Eric KatzfeyE Eric Katzfey

                  @andremoura The GPS unit will come up and get a fix on it's own after it has been powered on so that doesn't indicate anything about the health of the connection to the flight controller. If the result of px4-listener sensor_gps is never published then there is likely a problem with your connection to the GPS unit. The GPS driver on VOXL2 runs on the DSP, not on the applications processor so you have to use qshell to interact with it. So, for status, you would use px4-qshell gps status. Have you made any changes to the Sentinel hardware or is it exactly the same as it was shipped?

                  A Offline
                  A Offline
                  Andre Moura
                  Contributor
                  wrote on last edited by
                  #8

                  @Eric-Katzfey After manually stopping and starting the voxl-px4 service, it has been working on startup.
                  Very strange, since when I first noticed the GPS issue, the service was running from startup but not receiving any data (as seen on my console print). However, now it seems to work every time we shut down and power on the drone.

                  Thank you for your help!

                  Eric KatzfeyE 1 Reply Last reply
                  0
                  • A Andre Moura

                    @Eric-Katzfey After manually stopping and starting the voxl-px4 service, it has been working on startup.
                    Very strange, since when I first noticed the GPS issue, the service was running from startup but not receiving any data (as seen on my console print). However, now it seems to work every time we shut down and power on the drone.

                    Thank you for your help!

                    Eric KatzfeyE Offline
                    Eric KatzfeyE Offline
                    Eric Katzfey
                    ModalAI Team
                    wrote on last edited by
                    #9

                    @andremoura Okay, that's unexpected. Oh well, at least it is working now! Let me know if it starts to give trouble again.

                    A 1 Reply Last reply
                    0
                    • Eric KatzfeyE Eric Katzfey

                      @andremoura Okay, that's unexpected. Oh well, at least it is working now! Let me know if it starts to give trouble again.

                      A Offline
                      A Offline
                      Andre Moura
                      Contributor
                      wrote on last edited by
                      #10

                      @Eric-Katzfey Unfortunately the GPS is not working as expected. Yesterday we were momentarily able to get between 9-12 satellites, which I think is a little low. With that number of satellites, we were not able to get GPS lock on the drone, QGC displayed an error related to GPS accuracy too low. Even after allowing to arm without GPS lock and flying at about 15 m, the number of satellites didn't change and we couldn't even put the drone in position mode, because of not being GPS locked.

                      What we did to be able to even get those satellites was systemctl disable voxl-px4 , systemctl disable voxl-mavlink-server, rebooted the drone and, in two different ssh shells, ran both services manually.

                      Today, using this approach, I'm not even able to get any satellites at all. All the following tests were done with the ekf2_outdoor_gps_mag.params configuration file from your Gitlab.

                      The output from voxl-px4 was:

                      voxl2:~$ voxl-px4
                      Found DSP signature file
                      INFO  [px4] mlockall() enabled. PX4's virtual address space is locked into RAM.
                      INFO  [px4] assuming working directory is rootfs, no symlinks needed.
                      
                      ______  __   __    ___ 
                      | ___ \ \ \ / /   /   |
                      | |_/ /  \ V /   / /| |
                      |  __/   /   \  / /_| |
                      | |     / /^\ \ \___  |
                      \_|     \/   \/     |_/
                      
                      px4 starting.
                      
                      INFO  [px4] Calling startup script: /bin/sh /etc/modalai/voxl-px4.config 0
                      Running on M0054
                      INFO  [muorb] SLPI: Creating qurt thread hpwork
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_hpwork with tid 82
                      INFO  [muorb] SLPI: Creating qurt thread lpwork
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_lpwork with tid 81
                      INFO  [muorb] SLPI: Creating qurt thread wkr_hrt
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wkr_hrt with tid 80
                      INFO  [muorb] SLPI: Creating qurt thread client_sync_thread
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_client_sync_thread with tid 79
                      INFO  [muorb] SLPI: Creating qurt thread wq_manager
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_manager with tid 78
                      INFO  [muorb] SLPI: Creating qurt thread qshell
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_qshell with tid 77
                      INFO  [qshell] Send cmd: 'icm42688p start -s'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: icm42688p start -s
                      INFO  [muorb] SLPI: Creating qurt thread wq_SPI1
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_SPI1 with tid 76
                      INFO  [muorb] SLPI: *** SPI Device ID 0x26000a 2490378
                      INFO  [uorb] Advertising remote topic sensor_accel
                      INFO  [uorb] Marking DeviceNode(parameter_server_set_used_request) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: Marking DeviceNode(parameter_server_set_used_response) as advertised in process_remote_to
                      INFO  [uorb] Advertising remote topic sensor_gyro
                      INFO  [uorb] Advertising remote topic imu_server
                      INFO  [muorb] SLPI: on SPI bus 1
                      INFO  [muorb] SLPI: icm42688p #0 on SPI bus 1 (devid=0x0)
                      INFO  [muorb] SLPI: 
                      
                      INFO  [muorb] SLPI: Ok executing command: icm42688p start -s
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 23323798, current timestamp 23323799
                      INFO  [uorb] Advertising remote topic qshell_retval
                      INFO  [qshell] qshell return value timestamp: 23323798, local time: 23327958
                      INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_reset_request) as advertised in process_remote_topic
                      ERROR [muorb] SLPI: Cannot reset all parameters on client side
                      INFO  [uorb] Marking DeviceNode(parameter_client_reset_response) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: Advertising remote topic parameter_update
                      INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_set_value_request) as advertised in process_remote_to
                      INFO  [uorb] Marking DeviceNode(parameter_client_set_value_response) as advertised in process_remote_topic
                      INFO  [logger] logger started (mode=all)
                      Starting Holybro magnetometer
                      INFO  [qshell] Send cmd: 'ist8310 start -R 10 -X -b 1'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: ist8310 start -R 10 -X -b 1
                      INFO  [muorb] SLPI: Creating qurt thread wq_I2C1
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C1 with tid 75
                      INFO  [muorb] SLPI: *** I2C Device ID 0x60e09 396809
                      INFO  [muorb] SLPI: ist8310 #0 on I2C bus 1 (external)
                      
                      INFO  [muorb] SLPI: Ok executing command: ist8310 start -R 10 -X -b 1
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26405496, current timestamp 26405497
                      INFO  [qshell] qshell return value timestamp: 26405496, local time: 26406391
                      Starting Holybro LED driver
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                      INFO  [muorb] SLPI: *** I2C Device ID 0x7b3809 8075273
                      INFO  [qshell] Send cmd: 'rgbled_ncp5623c start -X -b 1 -f 400 -a 56'
                      INFO  [muorb] SLPI: rgbled_ncp5623c #0 on I2C bus 1 (external)
                      
                      INFO  [muorb] SLPI: Ok executing command: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26445017, current timestamp 26445018
                      INFO  [qshell] qshell return value timestamp: 26445017, local time: 26445673
                      INFO  [qshell] Send cmd: 'icp10100 start -I -b 5'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: icp10100 start -I -b 5
                      INFO  [muorb] SLPI: Creating qurt thread wq_I2C5
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C5 with tid 74
                      INFO  [muorb] SLPI: *** I2C Device ID 0x9c6329 10249001
                      INFO  [muorb] SLPI: probe probe succeeded. data = 0x1 0x48
                      INFO  [muorb] SLPI: icp10100 #0 on I2C bus 5
                      
                      INFO  [muorb] SLPI: Ok executing command: icp10100 start -I -b 5
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26486020, current timestamp 26486021
                      INFO  [qshell] qshell return value timestamp: 26486020, local time: 26487682
                      INFO  [uorb] Advertising remote topic sensor_mag
                      INFO  [qshell] Send cmd: 'modalai_esc start'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: modalai_esc start
                      INFO  [muorb] SLPI: Creating qurt thread wq_hp_default
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_hp_default with tid 73
                      INFO  [uorb] Advertising remote topic sensor_baro
                      INFO  [uorb] Advertising remote topic test_motor
                      INFO  [muorb] SLPI: Ok executing command: modalai_esc start
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26546800, current timestamp 26546801
                      INFO  [muorb] SLPI: Opened UART ESC device
                      INFO  [qshell] qshell return value timestamp: 26546800, local time: 26548152
                      INFO  [qshell] Send cmd: 'mixer load /dev/uart_esc quad_x.main.mix'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: mixer load /dev/uart_esc quad_x.main.mix
                      INFO  [muorb] SLPI: Creating qurt thread wq_rate_ctrl
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_rate_ctrl with tid 71
                      INFO  [muorb] SLPI: Ok executing command: mixer load /dev/uart_esc quad_x.main.mix
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26609932, current timestamp 26609933
                      INFO  [qshell] qshell return value timestamp: 26609932, local time: 26611050
                      INFO  [uorb] Advertising remote topic actuator_outputs
                      INFO  [uorb] Advertising remote topic multirotor_motor_limits
                      INFO  [qshell] Send cmd: 'voxlpm start -X -b 2'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: voxlpm start -X -b 2
                      INFO  [muorb] SLPI: Creating qurt thread wq_I2C2
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C2 with tid 4169
                      INFO  [muorb] SLPI: *** I2C Device ID 0x784411 7881745
                      INFO  [uorb] Advertising remote topic battery_status
                      INFO  [muorb] SLPI: voxlpm #0 on I2C bus 2 (external)
                      
                      INFO  [muorb] SLPI: Ok executing command: voxlpm start -X -b 2
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26674290, current timestamp 26674291
                      INFO  [qshell] qshell return value timestamp: 26674290, local time: 26675325
                      INFO  [uorb] Advertising remote topic power_monitor
                      Starting Holybro GPS
                      INFO  [qshell] Send cmd: 'gps start -d 7 -b 115200'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: gps start -d 7 -b 115200
                      INFO  [muorb] SLPI: Creating qurt thread gps
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_gps with tid 70
                      INFO  [muorb] SLPI: Ok executing command: gps start -d 7 -b 115200
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26712883, current timestamp 26712884
                      INFO  [qshell] qshell return value timestamp: 26712883, local time: 26713903
                      INFO  [qshell] Send cmd: 'px4io detect'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: px4io detect
                      INFO  [muorb] SLPI: serial port fd 2
                      ERROR [muorb] SLPI: px4io read failed
                      ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                      ERROR [muorb] SLPI: IO not installed
                      ERROR [muorb] SLPI: Detection attempt 2 failed
                      ERROR [muorb] SLPI: Detection attempt 1 failed
                      ERROR [muorb] SLPI: Detection attempt 0 failed
                      ERROR [muorb] SLPI: Failed to execute command: px4io detect
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26777758, current timestamp 26777759
                      INFO  [qshell] cmd returned with: -17
                      INFO  [qshell] qshell return value timestamp: 26777758, local time: 26778378
                      ERROR [qshell] Command failed
                      M0065 not detected, starting Spektrum RC driver
                      INFO  [qshell] Send cmd: 'spektrum_rc start -d 8'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: spektrum_rc start -d 8
                      INFO  [muorb] SLPI: Creating qurt thread spektrum_rc_main
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_spektrum_rc_main with tid 67
                      INFO  [muorb] SLPI: Ok executing command: spektrum_rc start -d 8
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 26822566, current timestamp 26822566
                      INFO  [qshell] qshell return value timestamp: 26822566, local time: 26823292
                      INFO  [qshell] Send cmd: 'sensors start'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: sensors start
                      INFO  [muorb] SLPI: Creating qurt thread wq_nav_and_controllers
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_nav_and_controllers with tid 66
                      INFO  [muorb] SLPI: Ok executing command: sensors start
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 27885493, current timestamp 27885494
                      INFO  [uorb] Advertising remote topic vehicle_angular_acceleration
                      INFO  [uorb] Advertising remote topic vehicle_angular_velocity
                      INFO  [qshell] qshell return value timestamp: 27885493, local time: 27890054
                      INFO  [muorb] SLPI: Creating qurt thread wq_INS0
                      
                      INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_INS0 with tid 65
                      INFO  [uorb] Advertising remote topic vehicle_imu
                      INFO  [uorb] Advertising remote topic vehicle_imu_status
                      INFO  [uorb] Advertising remote topic sensors_status_imu
                      INFO  [uorb] Advertising remote topic vehicle_acceleration
                      INFO  [uorb] Advertising remote topic vehicle_air_data
                      INFO  [uorb] Advertising remote topic sensor_selection
                      INFO  [uorb] Advertising remote topic sensor_combined
                      INFO  [qshell] Send cmd: 'ekf2 start'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: ekf2 start
                      INFO  [muorb] SLPI: Ok executing command: ekf2 start
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 28080230, current timestamp 28080231
                      INFO  [qshell] qshell return value timestamp: 28080230, local time: 28081490
                      INFO  [uorb] Advertising remote topic ekf2_timestamps
                      INFO  [qshell] Send cmd: 'mc_pos_control start'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: mc_pos_control start
                      INFO  [muorb] SLPI: Ok executing command: mc_pos_control start
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 28141872, current timestamp 28141873
                      INFO  [qshell] qshell return value timestamp: 28141872, local time: 28143606
                      INFO  [qshell] Send cmd: 'mc_att_control start'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: mc_att_control start
                      INFO  [muorb] SLPI: Ok executing command: mc_att_control start
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 28193889, current timestamp 28193890
                      INFO  [qshell] qshell return value timestamp: 28193889, local time: 28194908
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: mc_rate_control start
                      INFO  [qshell] Send cmd: 'mc_rate_control start'
                      INFO  [muorb] SLPI: Ok executing command: mc_rate_control start
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 28277320, current timestamp 28277321
                      INFO  [qshell] qshell return value timestamp: 28277320, local time: 28277781
                      INFO  [qshell] Send cmd: 'mc_hover_thrust_estimator start'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: mc_hover_thrust_estimator start
                      INFO  [muorb] SLPI: Ok executing command: mc_hover_thrust_estimator start
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 28316740, current timestamp 28316741
                      INFO  [qshell] qshell return value timestamp: 28316740, local time: 28317757
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [qshell] Send cmd: 'land_detector start multicopter'
                      INFO  [muorb] SLPI: qshell gotten: land_detector start multicopter
                      INFO  [muorb] SLPI: Ok executing command: land_detector start multicopter
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 28355231, current timestamp 28355232
                      INFO  [qshell] qshell return value timestamp: 28355231, local time: 28356012
                      INFO  [uorb] Advertising remote topic vehicle_land_detected
                      INFO  [muorb] SLPI: 28570980: reset position to last known position
                      INFO  [muorb] SLPI: 28570980: reset velocity to zero
                      INFO  [uorb] Advertising remote topic vehicle_local_position
                      INFO  [uorb] Advertising remote topic vehicle_odometry
                      INFO  [uorb] Advertising remote topic estimator_states
                      INFO  [uorb] Advertising remote topic estimator_status
                      INFO  [uorb] Advertising remote topic estimator_status_flags
                      INFO  [uorb] Advertising remote topic estimator_innovations
                      INFO  [uorb] Advertising remote topic estimator_innovation_test_ratios
                      INFO  [uorb] Advertising remote topic estimator_innovation_variances
                      INFO  [dataman] Unknown restart, data manager file '/data/px4/dataman' size is 11798680 bytes
                      INFO  [muorb] SLPI: Advertising remote topic position_setpoint_triplet
                      INFO  [commander] LED: open /dev/led0 failed (22)
                      INFO  [muorb] SLPI: Advertising remote topic led_control
                      INFO  [muorb] SLPI: Advertising remote topic tune_control
                      INFO  [PreFlightCheck] Failed EKF health preflight check while waiting for filter to settle
                      INFO  [muorb] SLPI: Advertising remote topic vehicle_control_mode
                      INFO  [muorb] SLPI: Advertising remote topic vehicle_status
                      INFO  [muorb] SLPI: Advertising remote topic actuator_armed
                      INFO  [uorb] Advertising remote topic rate_ctrl_status
                      INFO  [uorb] Advertising remote topic actuator_controls_0
                      INFO  [muorb] SLPI: Advertising remote topic commander_state
                      INFO  [muorb] SLPI: Advertising remote topic vehicle_status_flags
                      INFO  [muorb] SLPI: Advertising remote topic vehicle_command
                      INFO  [commander] Handling Commander command 176
                      INFO  [muorb] SLPI: Advertising remote topic vehicle_command_ack
                      INFO  [mavlink] mode: Onboard, data rate: 100000 B/s on udp port 14556 remote port 14557
                      INFO  [muorb] SLPI: Marking DeviceNode(vehicle_command) as advertised in process_remote_topic
                      INFO  [uorb] Advertising remote topic estimator_sensor_bias
                      INFO  [px4] Startup script returned successfully
                      pxh> INFO  [muorb] SLPI: Advertising remote topic telemetry_status
                      INFO  [muorb] SLPI: 34702200: EKF aligned, (baro hgt, IMU buf: 11, OBS buf: 8)
                      INFO  [uorb] Advertising remote topic vehicle_attitude
                      INFO  [uorb] Advertising remote topic vehicle_attitude_setpoint
                      INFO  [uorb] Advertising remote topic vehicle_rates_setpoint
                      

                      Inside the pxh console, we ran the gps status command and got:

                      INFO  [gps] not running
                      Command 'gps' failed, returned -1.
                      

                      I find this strange since when we ran the voxl-px4 service it had the start command for the gps. Since gps was not running, I decided to test again the gps start by doing gps stop and then gps start -d 7 -b 115200, that appeared on the output of ```voxl-px4``. The console output was:

                      ERROR [gps] GPS: failed to open serial port: 7 err: 2
                      

                      We also tried the same with qshell.
                      qshell gps status outputted:

                      pxh> qshell gps status
                      INFO  [qshell] Send cmd: 'gps status'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: gps status
                      INFO  [muorb] SLPI: Main GPS
                      INFO  [muorb] SLPI: protocol: UBX
                      INFO  [muorb] SLPI: status: NOT OK, port: 6, baudrate: 115200
                      INFO  [muorb] SLPI: sat info: disabled
                      INFO  [muorb] SLPI: rate reading: 		     0 B/s
                      INFO  [muorb] SLPI: Ok executing command: gps status
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 318302556, current timestamp 318302557
                      INFO  [qshell] qshell return value timestamp: 318302556, local time: 318308860
                      

                      We also tried to stop and run it again with qshell gps stop and qshell gps start.

                      After this, the output of qshell gps status was:

                      pxh> qshell gps status
                      INFO  [qshell] Send cmd: 'gps status'
                      INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                      INFO  [muorb] SLPI: qshell gotten: gps status
                      INFO  [muorb] SLPI: Main GPS
                      INFO  [muorb] SLPI: protocol: UBX
                      INFO  [muorb] SLPI: status: OK, port: 6, baudrate: 115200
                      INFO  [muorb] SLPI: sat info: disabled
                      INFO  [muorb] SLPI: rate reading: 		   695 B/s
                      INFO  [muorb] SLPI: rate position: 		  5.00 Hz
                      INFO  [muorb] SLPI: rate velocity: 		  5.00 Hz
                      INFO  [muorb] SLPI: rate publication:		  5.00 Hz
                      INFO  [muorb] SLPI: rate RTCM injection:	  0.00 Hz
                      INFO  [muorb] SLPI:  sensor_gps_s
                      
                      INFO  [muorb] SLPI: 	timestamp: 405957015  (0.197956 seconds ago)
                      
                      INFO  [muorb] SLPI: 	time_utc_usec: 0
                      
                      INFO  [muorb] SLPI: 	lat: 0
                      
                      INFO  [muorb] SLPI: 	lon: 0
                      
                      INFO  [muorb] SLPI: 	alt: -17000
                      
                      INFO  [muorb] SLPI: 	alt_ellipsoid: 0
                      
                      INFO  [muorb] SLPI: 	s_variance_m_s: 1000.0001
                      
                      INFO  [muorb] SLPI: 	c_variance_rad: 3.1416
                      
                      INFO  [muorb] SLPI: 	eph: 4294967.5000
                      
                      INFO  [muorb] SLPI: 	epv: 3772217.5000
                      
                      INFO  [muorb] SLPI: 	hdop: 99.9900
                      
                      INFO  [muorb] SLPI: 	vdop: 99.9900
                      
                      INFO  [muorb] SLPI: 	noise_per_ms: 93
                      
                      INFO  [muorb] SLPI: 	jamming_indicator: 30
                      
                      INFO  [muorb] SLPI: 	vel_m_s: 0.0000
                      
                      INFO  [muorb] SLPI: 	vel_n_m_s: 0.0000
                      
                      INFO  [muorb] SLPI: 	vel_e_m_s: 0.0000
                      
                      INFO  [muorb] SLPI: 	vel_d_m_s: 0.0000
                      
                      INFO  [muorb] SLPI: 	cog_rad: 0.0000
                      
                      INFO  [muorb] SLPI: 	timestamp_time_relative: 0
                      
                      INFO  [muorb] SLPI: 	heading: -nan
                      
                      INFO  [muorb] SLPI: 	heading_offset: 0.0000
                      
                      INFO  [muorb] SLPI: 	fix_type: 0
                      
                      INFO  [muorb] SLPI: 	jamming_state: 0
                      
                      INFO  [muorb] SLPI: 	vel_ned_valid: False
                      
                      INFO  [muorb] SLPI: 	satellites_used: 0
                      
                      INFO  [muorb] SLPI: Ok executing command: gps status
                      INFO  [muorb] SLPI: Sending qshell retval with timestamp 406155973, current timestamp 406155974
                      INFO  [qshell] qshell return value timestamp: 406155973, local time: 406158054
                      

                      Any ideia of what the problem could be?

                      I also noticed the following errors on the voxl-px4 output:

                      ERROR [muorb] SLPI: px4io read failed
                      ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                      ERROR [muorb] SLPI: IO not installed
                      ERROR [muorb] SLPI: Detection attempt 2 failed
                      ERROR [muorb] SLPI: Detection attempt 1 failed
                      ERROR [muorb] SLPI: Detection attempt 0 failed
                      ERROR [muorb] SLPI: Failed to execute command: px4io detect
                      

                      Is this normal?

                      Thank you.

                      Eric KatzfeyE 3 Replies Last reply
                      0
                      • A Andre Moura

                        @Eric-Katzfey Unfortunately the GPS is not working as expected. Yesterday we were momentarily able to get between 9-12 satellites, which I think is a little low. With that number of satellites, we were not able to get GPS lock on the drone, QGC displayed an error related to GPS accuracy too low. Even after allowing to arm without GPS lock and flying at about 15 m, the number of satellites didn't change and we couldn't even put the drone in position mode, because of not being GPS locked.

                        What we did to be able to even get those satellites was systemctl disable voxl-px4 , systemctl disable voxl-mavlink-server, rebooted the drone and, in two different ssh shells, ran both services manually.

                        Today, using this approach, I'm not even able to get any satellites at all. All the following tests were done with the ekf2_outdoor_gps_mag.params configuration file from your Gitlab.

                        The output from voxl-px4 was:

                        voxl2:~$ voxl-px4
                        Found DSP signature file
                        INFO  [px4] mlockall() enabled. PX4's virtual address space is locked into RAM.
                        INFO  [px4] assuming working directory is rootfs, no symlinks needed.
                        
                        ______  __   __    ___ 
                        | ___ \ \ \ / /   /   |
                        | |_/ /  \ V /   / /| |
                        |  __/   /   \  / /_| |
                        | |     / /^\ \ \___  |
                        \_|     \/   \/     |_/
                        
                        px4 starting.
                        
                        INFO  [px4] Calling startup script: /bin/sh /etc/modalai/voxl-px4.config 0
                        Running on M0054
                        INFO  [muorb] SLPI: Creating qurt thread hpwork
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_hpwork with tid 82
                        INFO  [muorb] SLPI: Creating qurt thread lpwork
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_lpwork with tid 81
                        INFO  [muorb] SLPI: Creating qurt thread wkr_hrt
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wkr_hrt with tid 80
                        INFO  [muorb] SLPI: Creating qurt thread client_sync_thread
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_client_sync_thread with tid 79
                        INFO  [muorb] SLPI: Creating qurt thread wq_manager
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_manager with tid 78
                        INFO  [muorb] SLPI: Creating qurt thread qshell
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_qshell with tid 77
                        INFO  [qshell] Send cmd: 'icm42688p start -s'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: icm42688p start -s
                        INFO  [muorb] SLPI: Creating qurt thread wq_SPI1
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_SPI1 with tid 76
                        INFO  [muorb] SLPI: *** SPI Device ID 0x26000a 2490378
                        INFO  [uorb] Advertising remote topic sensor_accel
                        INFO  [uorb] Marking DeviceNode(parameter_server_set_used_request) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: Marking DeviceNode(parameter_server_set_used_response) as advertised in process_remote_to
                        INFO  [uorb] Advertising remote topic sensor_gyro
                        INFO  [uorb] Advertising remote topic imu_server
                        INFO  [muorb] SLPI: on SPI bus 1
                        INFO  [muorb] SLPI: icm42688p #0 on SPI bus 1 (devid=0x0)
                        INFO  [muorb] SLPI: 
                        
                        INFO  [muorb] SLPI: Ok executing command: icm42688p start -s
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 23323798, current timestamp 23323799
                        INFO  [uorb] Advertising remote topic qshell_retval
                        INFO  [qshell] qshell return value timestamp: 23323798, local time: 23327958
                        INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_reset_request) as advertised in process_remote_topic
                        ERROR [muorb] SLPI: Cannot reset all parameters on client side
                        INFO  [uorb] Marking DeviceNode(parameter_client_reset_response) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: Advertising remote topic parameter_update
                        INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_set_value_request) as advertised in process_remote_to
                        INFO  [uorb] Marking DeviceNode(parameter_client_set_value_response) as advertised in process_remote_topic
                        INFO  [logger] logger started (mode=all)
                        Starting Holybro magnetometer
                        INFO  [qshell] Send cmd: 'ist8310 start -R 10 -X -b 1'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: ist8310 start -R 10 -X -b 1
                        INFO  [muorb] SLPI: Creating qurt thread wq_I2C1
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C1 with tid 75
                        INFO  [muorb] SLPI: *** I2C Device ID 0x60e09 396809
                        INFO  [muorb] SLPI: ist8310 #0 on I2C bus 1 (external)
                        
                        INFO  [muorb] SLPI: Ok executing command: ist8310 start -R 10 -X -b 1
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26405496, current timestamp 26405497
                        INFO  [qshell] qshell return value timestamp: 26405496, local time: 26406391
                        Starting Holybro LED driver
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                        INFO  [muorb] SLPI: *** I2C Device ID 0x7b3809 8075273
                        INFO  [qshell] Send cmd: 'rgbled_ncp5623c start -X -b 1 -f 400 -a 56'
                        INFO  [muorb] SLPI: rgbled_ncp5623c #0 on I2C bus 1 (external)
                        
                        INFO  [muorb] SLPI: Ok executing command: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26445017, current timestamp 26445018
                        INFO  [qshell] qshell return value timestamp: 26445017, local time: 26445673
                        INFO  [qshell] Send cmd: 'icp10100 start -I -b 5'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: icp10100 start -I -b 5
                        INFO  [muorb] SLPI: Creating qurt thread wq_I2C5
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C5 with tid 74
                        INFO  [muorb] SLPI: *** I2C Device ID 0x9c6329 10249001
                        INFO  [muorb] SLPI: probe probe succeeded. data = 0x1 0x48
                        INFO  [muorb] SLPI: icp10100 #0 on I2C bus 5
                        
                        INFO  [muorb] SLPI: Ok executing command: icp10100 start -I -b 5
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26486020, current timestamp 26486021
                        INFO  [qshell] qshell return value timestamp: 26486020, local time: 26487682
                        INFO  [uorb] Advertising remote topic sensor_mag
                        INFO  [qshell] Send cmd: 'modalai_esc start'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: modalai_esc start
                        INFO  [muorb] SLPI: Creating qurt thread wq_hp_default
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_hp_default with tid 73
                        INFO  [uorb] Advertising remote topic sensor_baro
                        INFO  [uorb] Advertising remote topic test_motor
                        INFO  [muorb] SLPI: Ok executing command: modalai_esc start
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26546800, current timestamp 26546801
                        INFO  [muorb] SLPI: Opened UART ESC device
                        INFO  [qshell] qshell return value timestamp: 26546800, local time: 26548152
                        INFO  [qshell] Send cmd: 'mixer load /dev/uart_esc quad_x.main.mix'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: mixer load /dev/uart_esc quad_x.main.mix
                        INFO  [muorb] SLPI: Creating qurt thread wq_rate_ctrl
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_rate_ctrl with tid 71
                        INFO  [muorb] SLPI: Ok executing command: mixer load /dev/uart_esc quad_x.main.mix
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26609932, current timestamp 26609933
                        INFO  [qshell] qshell return value timestamp: 26609932, local time: 26611050
                        INFO  [uorb] Advertising remote topic actuator_outputs
                        INFO  [uorb] Advertising remote topic multirotor_motor_limits
                        INFO  [qshell] Send cmd: 'voxlpm start -X -b 2'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: voxlpm start -X -b 2
                        INFO  [muorb] SLPI: Creating qurt thread wq_I2C2
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C2 with tid 4169
                        INFO  [muorb] SLPI: *** I2C Device ID 0x784411 7881745
                        INFO  [uorb] Advertising remote topic battery_status
                        INFO  [muorb] SLPI: voxlpm #0 on I2C bus 2 (external)
                        
                        INFO  [muorb] SLPI: Ok executing command: voxlpm start -X -b 2
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26674290, current timestamp 26674291
                        INFO  [qshell] qshell return value timestamp: 26674290, local time: 26675325
                        INFO  [uorb] Advertising remote topic power_monitor
                        Starting Holybro GPS
                        INFO  [qshell] Send cmd: 'gps start -d 7 -b 115200'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: gps start -d 7 -b 115200
                        INFO  [muorb] SLPI: Creating qurt thread gps
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_gps with tid 70
                        INFO  [muorb] SLPI: Ok executing command: gps start -d 7 -b 115200
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26712883, current timestamp 26712884
                        INFO  [qshell] qshell return value timestamp: 26712883, local time: 26713903
                        INFO  [qshell] Send cmd: 'px4io detect'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: px4io detect
                        INFO  [muorb] SLPI: serial port fd 2
                        ERROR [muorb] SLPI: px4io read failed
                        ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                        ERROR [muorb] SLPI: IO not installed
                        ERROR [muorb] SLPI: Detection attempt 2 failed
                        ERROR [muorb] SLPI: Detection attempt 1 failed
                        ERROR [muorb] SLPI: Detection attempt 0 failed
                        ERROR [muorb] SLPI: Failed to execute command: px4io detect
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26777758, current timestamp 26777759
                        INFO  [qshell] cmd returned with: -17
                        INFO  [qshell] qshell return value timestamp: 26777758, local time: 26778378
                        ERROR [qshell] Command failed
                        M0065 not detected, starting Spektrum RC driver
                        INFO  [qshell] Send cmd: 'spektrum_rc start -d 8'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: spektrum_rc start -d 8
                        INFO  [muorb] SLPI: Creating qurt thread spektrum_rc_main
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_spektrum_rc_main with tid 67
                        INFO  [muorb] SLPI: Ok executing command: spektrum_rc start -d 8
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 26822566, current timestamp 26822566
                        INFO  [qshell] qshell return value timestamp: 26822566, local time: 26823292
                        INFO  [qshell] Send cmd: 'sensors start'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: sensors start
                        INFO  [muorb] SLPI: Creating qurt thread wq_nav_and_controllers
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_nav_and_controllers with tid 66
                        INFO  [muorb] SLPI: Ok executing command: sensors start
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 27885493, current timestamp 27885494
                        INFO  [uorb] Advertising remote topic vehicle_angular_acceleration
                        INFO  [uorb] Advertising remote topic vehicle_angular_velocity
                        INFO  [qshell] qshell return value timestamp: 27885493, local time: 27890054
                        INFO  [muorb] SLPI: Creating qurt thread wq_INS0
                        
                        INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_INS0 with tid 65
                        INFO  [uorb] Advertising remote topic vehicle_imu
                        INFO  [uorb] Advertising remote topic vehicle_imu_status
                        INFO  [uorb] Advertising remote topic sensors_status_imu
                        INFO  [uorb] Advertising remote topic vehicle_acceleration
                        INFO  [uorb] Advertising remote topic vehicle_air_data
                        INFO  [uorb] Advertising remote topic sensor_selection
                        INFO  [uorb] Advertising remote topic sensor_combined
                        INFO  [qshell] Send cmd: 'ekf2 start'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: ekf2 start
                        INFO  [muorb] SLPI: Ok executing command: ekf2 start
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 28080230, current timestamp 28080231
                        INFO  [qshell] qshell return value timestamp: 28080230, local time: 28081490
                        INFO  [uorb] Advertising remote topic ekf2_timestamps
                        INFO  [qshell] Send cmd: 'mc_pos_control start'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: mc_pos_control start
                        INFO  [muorb] SLPI: Ok executing command: mc_pos_control start
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 28141872, current timestamp 28141873
                        INFO  [qshell] qshell return value timestamp: 28141872, local time: 28143606
                        INFO  [qshell] Send cmd: 'mc_att_control start'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: mc_att_control start
                        INFO  [muorb] SLPI: Ok executing command: mc_att_control start
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 28193889, current timestamp 28193890
                        INFO  [qshell] qshell return value timestamp: 28193889, local time: 28194908
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: mc_rate_control start
                        INFO  [qshell] Send cmd: 'mc_rate_control start'
                        INFO  [muorb] SLPI: Ok executing command: mc_rate_control start
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 28277320, current timestamp 28277321
                        INFO  [qshell] qshell return value timestamp: 28277320, local time: 28277781
                        INFO  [qshell] Send cmd: 'mc_hover_thrust_estimator start'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: mc_hover_thrust_estimator start
                        INFO  [muorb] SLPI: Ok executing command: mc_hover_thrust_estimator start
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 28316740, current timestamp 28316741
                        INFO  [qshell] qshell return value timestamp: 28316740, local time: 28317757
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [qshell] Send cmd: 'land_detector start multicopter'
                        INFO  [muorb] SLPI: qshell gotten: land_detector start multicopter
                        INFO  [muorb] SLPI: Ok executing command: land_detector start multicopter
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 28355231, current timestamp 28355232
                        INFO  [qshell] qshell return value timestamp: 28355231, local time: 28356012
                        INFO  [uorb] Advertising remote topic vehicle_land_detected
                        INFO  [muorb] SLPI: 28570980: reset position to last known position
                        INFO  [muorb] SLPI: 28570980: reset velocity to zero
                        INFO  [uorb] Advertising remote topic vehicle_local_position
                        INFO  [uorb] Advertising remote topic vehicle_odometry
                        INFO  [uorb] Advertising remote topic estimator_states
                        INFO  [uorb] Advertising remote topic estimator_status
                        INFO  [uorb] Advertising remote topic estimator_status_flags
                        INFO  [uorb] Advertising remote topic estimator_innovations
                        INFO  [uorb] Advertising remote topic estimator_innovation_test_ratios
                        INFO  [uorb] Advertising remote topic estimator_innovation_variances
                        INFO  [dataman] Unknown restart, data manager file '/data/px4/dataman' size is 11798680 bytes
                        INFO  [muorb] SLPI: Advertising remote topic position_setpoint_triplet
                        INFO  [commander] LED: open /dev/led0 failed (22)
                        INFO  [muorb] SLPI: Advertising remote topic led_control
                        INFO  [muorb] SLPI: Advertising remote topic tune_control
                        INFO  [PreFlightCheck] Failed EKF health preflight check while waiting for filter to settle
                        INFO  [muorb] SLPI: Advertising remote topic vehicle_control_mode
                        INFO  [muorb] SLPI: Advertising remote topic vehicle_status
                        INFO  [muorb] SLPI: Advertising remote topic actuator_armed
                        INFO  [uorb] Advertising remote topic rate_ctrl_status
                        INFO  [uorb] Advertising remote topic actuator_controls_0
                        INFO  [muorb] SLPI: Advertising remote topic commander_state
                        INFO  [muorb] SLPI: Advertising remote topic vehicle_status_flags
                        INFO  [muorb] SLPI: Advertising remote topic vehicle_command
                        INFO  [commander] Handling Commander command 176
                        INFO  [muorb] SLPI: Advertising remote topic vehicle_command_ack
                        INFO  [mavlink] mode: Onboard, data rate: 100000 B/s on udp port 14556 remote port 14557
                        INFO  [muorb] SLPI: Marking DeviceNode(vehicle_command) as advertised in process_remote_topic
                        INFO  [uorb] Advertising remote topic estimator_sensor_bias
                        INFO  [px4] Startup script returned successfully
                        pxh> INFO  [muorb] SLPI: Advertising remote topic telemetry_status
                        INFO  [muorb] SLPI: 34702200: EKF aligned, (baro hgt, IMU buf: 11, OBS buf: 8)
                        INFO  [uorb] Advertising remote topic vehicle_attitude
                        INFO  [uorb] Advertising remote topic vehicle_attitude_setpoint
                        INFO  [uorb] Advertising remote topic vehicle_rates_setpoint
                        

                        Inside the pxh console, we ran the gps status command and got:

                        INFO  [gps] not running
                        Command 'gps' failed, returned -1.
                        

                        I find this strange since when we ran the voxl-px4 service it had the start command for the gps. Since gps was not running, I decided to test again the gps start by doing gps stop and then gps start -d 7 -b 115200, that appeared on the output of ```voxl-px4``. The console output was:

                        ERROR [gps] GPS: failed to open serial port: 7 err: 2
                        

                        We also tried the same with qshell.
                        qshell gps status outputted:

                        pxh> qshell gps status
                        INFO  [qshell] Send cmd: 'gps status'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: gps status
                        INFO  [muorb] SLPI: Main GPS
                        INFO  [muorb] SLPI: protocol: UBX
                        INFO  [muorb] SLPI: status: NOT OK, port: 6, baudrate: 115200
                        INFO  [muorb] SLPI: sat info: disabled
                        INFO  [muorb] SLPI: rate reading: 		     0 B/s
                        INFO  [muorb] SLPI: Ok executing command: gps status
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 318302556, current timestamp 318302557
                        INFO  [qshell] qshell return value timestamp: 318302556, local time: 318308860
                        

                        We also tried to stop and run it again with qshell gps stop and qshell gps start.

                        After this, the output of qshell gps status was:

                        pxh> qshell gps status
                        INFO  [qshell] Send cmd: 'gps status'
                        INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                        INFO  [muorb] SLPI: qshell gotten: gps status
                        INFO  [muorb] SLPI: Main GPS
                        INFO  [muorb] SLPI: protocol: UBX
                        INFO  [muorb] SLPI: status: OK, port: 6, baudrate: 115200
                        INFO  [muorb] SLPI: sat info: disabled
                        INFO  [muorb] SLPI: rate reading: 		   695 B/s
                        INFO  [muorb] SLPI: rate position: 		  5.00 Hz
                        INFO  [muorb] SLPI: rate velocity: 		  5.00 Hz
                        INFO  [muorb] SLPI: rate publication:		  5.00 Hz
                        INFO  [muorb] SLPI: rate RTCM injection:	  0.00 Hz
                        INFO  [muorb] SLPI:  sensor_gps_s
                        
                        INFO  [muorb] SLPI: 	timestamp: 405957015  (0.197956 seconds ago)
                        
                        INFO  [muorb] SLPI: 	time_utc_usec: 0
                        
                        INFO  [muorb] SLPI: 	lat: 0
                        
                        INFO  [muorb] SLPI: 	lon: 0
                        
                        INFO  [muorb] SLPI: 	alt: -17000
                        
                        INFO  [muorb] SLPI: 	alt_ellipsoid: 0
                        
                        INFO  [muorb] SLPI: 	s_variance_m_s: 1000.0001
                        
                        INFO  [muorb] SLPI: 	c_variance_rad: 3.1416
                        
                        INFO  [muorb] SLPI: 	eph: 4294967.5000
                        
                        INFO  [muorb] SLPI: 	epv: 3772217.5000
                        
                        INFO  [muorb] SLPI: 	hdop: 99.9900
                        
                        INFO  [muorb] SLPI: 	vdop: 99.9900
                        
                        INFO  [muorb] SLPI: 	noise_per_ms: 93
                        
                        INFO  [muorb] SLPI: 	jamming_indicator: 30
                        
                        INFO  [muorb] SLPI: 	vel_m_s: 0.0000
                        
                        INFO  [muorb] SLPI: 	vel_n_m_s: 0.0000
                        
                        INFO  [muorb] SLPI: 	vel_e_m_s: 0.0000
                        
                        INFO  [muorb] SLPI: 	vel_d_m_s: 0.0000
                        
                        INFO  [muorb] SLPI: 	cog_rad: 0.0000
                        
                        INFO  [muorb] SLPI: 	timestamp_time_relative: 0
                        
                        INFO  [muorb] SLPI: 	heading: -nan
                        
                        INFO  [muorb] SLPI: 	heading_offset: 0.0000
                        
                        INFO  [muorb] SLPI: 	fix_type: 0
                        
                        INFO  [muorb] SLPI: 	jamming_state: 0
                        
                        INFO  [muorb] SLPI: 	vel_ned_valid: False
                        
                        INFO  [muorb] SLPI: 	satellites_used: 0
                        
                        INFO  [muorb] SLPI: Ok executing command: gps status
                        INFO  [muorb] SLPI: Sending qshell retval with timestamp 406155973, current timestamp 406155974
                        INFO  [qshell] qshell return value timestamp: 406155973, local time: 406158054
                        

                        Any ideia of what the problem could be?

                        I also noticed the following errors on the voxl-px4 output:

                        ERROR [muorb] SLPI: px4io read failed
                        ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                        ERROR [muorb] SLPI: IO not installed
                        ERROR [muorb] SLPI: Detection attempt 2 failed
                        ERROR [muorb] SLPI: Detection attempt 1 failed
                        ERROR [muorb] SLPI: Detection attempt 0 failed
                        ERROR [muorb] SLPI: Failed to execute command: px4io detect
                        

                        Is this normal?

                        Thank you.

                        Eric KatzfeyE Offline
                        Eric KatzfeyE Offline
                        Eric Katzfey
                        ModalAI Team
                        wrote on last edited by
                        #11

                        @andremoura Yes, the errors related to px4io detection are expected since you do not have a px4io unit attached to the drone. And yes, you have to interact with things on the DSP (where the GPS driver runs) with qshell as you already figured out. Do you have any other Sentinel drones that you can compare against? Or other types of drones with GPS to compare against? When you are able to get 9 to 12 satellites what does qshell gps status show? It does appear to be wired up correctly as sometimes it is obviously communicating with the GPS unit.

                        A 1 Reply Last reply
                        0
                        • A Andre Moura

                          @Eric-Katzfey Unfortunately the GPS is not working as expected. Yesterday we were momentarily able to get between 9-12 satellites, which I think is a little low. With that number of satellites, we were not able to get GPS lock on the drone, QGC displayed an error related to GPS accuracy too low. Even after allowing to arm without GPS lock and flying at about 15 m, the number of satellites didn't change and we couldn't even put the drone in position mode, because of not being GPS locked.

                          What we did to be able to even get those satellites was systemctl disable voxl-px4 , systemctl disable voxl-mavlink-server, rebooted the drone and, in two different ssh shells, ran both services manually.

                          Today, using this approach, I'm not even able to get any satellites at all. All the following tests were done with the ekf2_outdoor_gps_mag.params configuration file from your Gitlab.

                          The output from voxl-px4 was:

                          voxl2:~$ voxl-px4
                          Found DSP signature file
                          INFO  [px4] mlockall() enabled. PX4's virtual address space is locked into RAM.
                          INFO  [px4] assuming working directory is rootfs, no symlinks needed.
                          
                          ______  __   __    ___ 
                          | ___ \ \ \ / /   /   |
                          | |_/ /  \ V /   / /| |
                          |  __/   /   \  / /_| |
                          | |     / /^\ \ \___  |
                          \_|     \/   \/     |_/
                          
                          px4 starting.
                          
                          INFO  [px4] Calling startup script: /bin/sh /etc/modalai/voxl-px4.config 0
                          Running on M0054
                          INFO  [muorb] SLPI: Creating qurt thread hpwork
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_hpwork with tid 82
                          INFO  [muorb] SLPI: Creating qurt thread lpwork
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_lpwork with tid 81
                          INFO  [muorb] SLPI: Creating qurt thread wkr_hrt
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wkr_hrt with tid 80
                          INFO  [muorb] SLPI: Creating qurt thread client_sync_thread
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_client_sync_thread with tid 79
                          INFO  [muorb] SLPI: Creating qurt thread wq_manager
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_manager with tid 78
                          INFO  [muorb] SLPI: Creating qurt thread qshell
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_qshell with tid 77
                          INFO  [qshell] Send cmd: 'icm42688p start -s'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: icm42688p start -s
                          INFO  [muorb] SLPI: Creating qurt thread wq_SPI1
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_SPI1 with tid 76
                          INFO  [muorb] SLPI: *** SPI Device ID 0x26000a 2490378
                          INFO  [uorb] Advertising remote topic sensor_accel
                          INFO  [uorb] Marking DeviceNode(parameter_server_set_used_request) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: Marking DeviceNode(parameter_server_set_used_response) as advertised in process_remote_to
                          INFO  [uorb] Advertising remote topic sensor_gyro
                          INFO  [uorb] Advertising remote topic imu_server
                          INFO  [muorb] SLPI: on SPI bus 1
                          INFO  [muorb] SLPI: icm42688p #0 on SPI bus 1 (devid=0x0)
                          INFO  [muorb] SLPI: 
                          
                          INFO  [muorb] SLPI: Ok executing command: icm42688p start -s
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 23323798, current timestamp 23323799
                          INFO  [uorb] Advertising remote topic qshell_retval
                          INFO  [qshell] qshell return value timestamp: 23323798, local time: 23327958
                          INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_reset_request) as advertised in process_remote_topic
                          ERROR [muorb] SLPI: Cannot reset all parameters on client side
                          INFO  [uorb] Marking DeviceNode(parameter_client_reset_response) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: Advertising remote topic parameter_update
                          INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_set_value_request) as advertised in process_remote_to
                          INFO  [uorb] Marking DeviceNode(parameter_client_set_value_response) as advertised in process_remote_topic
                          INFO  [logger] logger started (mode=all)
                          Starting Holybro magnetometer
                          INFO  [qshell] Send cmd: 'ist8310 start -R 10 -X -b 1'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: ist8310 start -R 10 -X -b 1
                          INFO  [muorb] SLPI: Creating qurt thread wq_I2C1
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C1 with tid 75
                          INFO  [muorb] SLPI: *** I2C Device ID 0x60e09 396809
                          INFO  [muorb] SLPI: ist8310 #0 on I2C bus 1 (external)
                          
                          INFO  [muorb] SLPI: Ok executing command: ist8310 start -R 10 -X -b 1
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26405496, current timestamp 26405497
                          INFO  [qshell] qshell return value timestamp: 26405496, local time: 26406391
                          Starting Holybro LED driver
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                          INFO  [muorb] SLPI: *** I2C Device ID 0x7b3809 8075273
                          INFO  [qshell] Send cmd: 'rgbled_ncp5623c start -X -b 1 -f 400 -a 56'
                          INFO  [muorb] SLPI: rgbled_ncp5623c #0 on I2C bus 1 (external)
                          
                          INFO  [muorb] SLPI: Ok executing command: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26445017, current timestamp 26445018
                          INFO  [qshell] qshell return value timestamp: 26445017, local time: 26445673
                          INFO  [qshell] Send cmd: 'icp10100 start -I -b 5'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: icp10100 start -I -b 5
                          INFO  [muorb] SLPI: Creating qurt thread wq_I2C5
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C5 with tid 74
                          INFO  [muorb] SLPI: *** I2C Device ID 0x9c6329 10249001
                          INFO  [muorb] SLPI: probe probe succeeded. data = 0x1 0x48
                          INFO  [muorb] SLPI: icp10100 #0 on I2C bus 5
                          
                          INFO  [muorb] SLPI: Ok executing command: icp10100 start -I -b 5
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26486020, current timestamp 26486021
                          INFO  [qshell] qshell return value timestamp: 26486020, local time: 26487682
                          INFO  [uorb] Advertising remote topic sensor_mag
                          INFO  [qshell] Send cmd: 'modalai_esc start'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: modalai_esc start
                          INFO  [muorb] SLPI: Creating qurt thread wq_hp_default
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_hp_default with tid 73
                          INFO  [uorb] Advertising remote topic sensor_baro
                          INFO  [uorb] Advertising remote topic test_motor
                          INFO  [muorb] SLPI: Ok executing command: modalai_esc start
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26546800, current timestamp 26546801
                          INFO  [muorb] SLPI: Opened UART ESC device
                          INFO  [qshell] qshell return value timestamp: 26546800, local time: 26548152
                          INFO  [qshell] Send cmd: 'mixer load /dev/uart_esc quad_x.main.mix'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: mixer load /dev/uart_esc quad_x.main.mix
                          INFO  [muorb] SLPI: Creating qurt thread wq_rate_ctrl
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_rate_ctrl with tid 71
                          INFO  [muorb] SLPI: Ok executing command: mixer load /dev/uart_esc quad_x.main.mix
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26609932, current timestamp 26609933
                          INFO  [qshell] qshell return value timestamp: 26609932, local time: 26611050
                          INFO  [uorb] Advertising remote topic actuator_outputs
                          INFO  [uorb] Advertising remote topic multirotor_motor_limits
                          INFO  [qshell] Send cmd: 'voxlpm start -X -b 2'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: voxlpm start -X -b 2
                          INFO  [muorb] SLPI: Creating qurt thread wq_I2C2
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C2 with tid 4169
                          INFO  [muorb] SLPI: *** I2C Device ID 0x784411 7881745
                          INFO  [uorb] Advertising remote topic battery_status
                          INFO  [muorb] SLPI: voxlpm #0 on I2C bus 2 (external)
                          
                          INFO  [muorb] SLPI: Ok executing command: voxlpm start -X -b 2
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26674290, current timestamp 26674291
                          INFO  [qshell] qshell return value timestamp: 26674290, local time: 26675325
                          INFO  [uorb] Advertising remote topic power_monitor
                          Starting Holybro GPS
                          INFO  [qshell] Send cmd: 'gps start -d 7 -b 115200'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: gps start -d 7 -b 115200
                          INFO  [muorb] SLPI: Creating qurt thread gps
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_gps with tid 70
                          INFO  [muorb] SLPI: Ok executing command: gps start -d 7 -b 115200
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26712883, current timestamp 26712884
                          INFO  [qshell] qshell return value timestamp: 26712883, local time: 26713903
                          INFO  [qshell] Send cmd: 'px4io detect'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: px4io detect
                          INFO  [muorb] SLPI: serial port fd 2
                          ERROR [muorb] SLPI: px4io read failed
                          ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                          ERROR [muorb] SLPI: IO not installed
                          ERROR [muorb] SLPI: Detection attempt 2 failed
                          ERROR [muorb] SLPI: Detection attempt 1 failed
                          ERROR [muorb] SLPI: Detection attempt 0 failed
                          ERROR [muorb] SLPI: Failed to execute command: px4io detect
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26777758, current timestamp 26777759
                          INFO  [qshell] cmd returned with: -17
                          INFO  [qshell] qshell return value timestamp: 26777758, local time: 26778378
                          ERROR [qshell] Command failed
                          M0065 not detected, starting Spektrum RC driver
                          INFO  [qshell] Send cmd: 'spektrum_rc start -d 8'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: spektrum_rc start -d 8
                          INFO  [muorb] SLPI: Creating qurt thread spektrum_rc_main
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_spektrum_rc_main with tid 67
                          INFO  [muorb] SLPI: Ok executing command: spektrum_rc start -d 8
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 26822566, current timestamp 26822566
                          INFO  [qshell] qshell return value timestamp: 26822566, local time: 26823292
                          INFO  [qshell] Send cmd: 'sensors start'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: sensors start
                          INFO  [muorb] SLPI: Creating qurt thread wq_nav_and_controllers
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_nav_and_controllers with tid 66
                          INFO  [muorb] SLPI: Ok executing command: sensors start
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 27885493, current timestamp 27885494
                          INFO  [uorb] Advertising remote topic vehicle_angular_acceleration
                          INFO  [uorb] Advertising remote topic vehicle_angular_velocity
                          INFO  [qshell] qshell return value timestamp: 27885493, local time: 27890054
                          INFO  [muorb] SLPI: Creating qurt thread wq_INS0
                          
                          INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_INS0 with tid 65
                          INFO  [uorb] Advertising remote topic vehicle_imu
                          INFO  [uorb] Advertising remote topic vehicle_imu_status
                          INFO  [uorb] Advertising remote topic sensors_status_imu
                          INFO  [uorb] Advertising remote topic vehicle_acceleration
                          INFO  [uorb] Advertising remote topic vehicle_air_data
                          INFO  [uorb] Advertising remote topic sensor_selection
                          INFO  [uorb] Advertising remote topic sensor_combined
                          INFO  [qshell] Send cmd: 'ekf2 start'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: ekf2 start
                          INFO  [muorb] SLPI: Ok executing command: ekf2 start
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 28080230, current timestamp 28080231
                          INFO  [qshell] qshell return value timestamp: 28080230, local time: 28081490
                          INFO  [uorb] Advertising remote topic ekf2_timestamps
                          INFO  [qshell] Send cmd: 'mc_pos_control start'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: mc_pos_control start
                          INFO  [muorb] SLPI: Ok executing command: mc_pos_control start
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 28141872, current timestamp 28141873
                          INFO  [qshell] qshell return value timestamp: 28141872, local time: 28143606
                          INFO  [qshell] Send cmd: 'mc_att_control start'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: mc_att_control start
                          INFO  [muorb] SLPI: Ok executing command: mc_att_control start
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 28193889, current timestamp 28193890
                          INFO  [qshell] qshell return value timestamp: 28193889, local time: 28194908
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: mc_rate_control start
                          INFO  [qshell] Send cmd: 'mc_rate_control start'
                          INFO  [muorb] SLPI: Ok executing command: mc_rate_control start
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 28277320, current timestamp 28277321
                          INFO  [qshell] qshell return value timestamp: 28277320, local time: 28277781
                          INFO  [qshell] Send cmd: 'mc_hover_thrust_estimator start'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: mc_hover_thrust_estimator start
                          INFO  [muorb] SLPI: Ok executing command: mc_hover_thrust_estimator start
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 28316740, current timestamp 28316741
                          INFO  [qshell] qshell return value timestamp: 28316740, local time: 28317757
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [qshell] Send cmd: 'land_detector start multicopter'
                          INFO  [muorb] SLPI: qshell gotten: land_detector start multicopter
                          INFO  [muorb] SLPI: Ok executing command: land_detector start multicopter
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 28355231, current timestamp 28355232
                          INFO  [qshell] qshell return value timestamp: 28355231, local time: 28356012
                          INFO  [uorb] Advertising remote topic vehicle_land_detected
                          INFO  [muorb] SLPI: 28570980: reset position to last known position
                          INFO  [muorb] SLPI: 28570980: reset velocity to zero
                          INFO  [uorb] Advertising remote topic vehicle_local_position
                          INFO  [uorb] Advertising remote topic vehicle_odometry
                          INFO  [uorb] Advertising remote topic estimator_states
                          INFO  [uorb] Advertising remote topic estimator_status
                          INFO  [uorb] Advertising remote topic estimator_status_flags
                          INFO  [uorb] Advertising remote topic estimator_innovations
                          INFO  [uorb] Advertising remote topic estimator_innovation_test_ratios
                          INFO  [uorb] Advertising remote topic estimator_innovation_variances
                          INFO  [dataman] Unknown restart, data manager file '/data/px4/dataman' size is 11798680 bytes
                          INFO  [muorb] SLPI: Advertising remote topic position_setpoint_triplet
                          INFO  [commander] LED: open /dev/led0 failed (22)
                          INFO  [muorb] SLPI: Advertising remote topic led_control
                          INFO  [muorb] SLPI: Advertising remote topic tune_control
                          INFO  [PreFlightCheck] Failed EKF health preflight check while waiting for filter to settle
                          INFO  [muorb] SLPI: Advertising remote topic vehicle_control_mode
                          INFO  [muorb] SLPI: Advertising remote topic vehicle_status
                          INFO  [muorb] SLPI: Advertising remote topic actuator_armed
                          INFO  [uorb] Advertising remote topic rate_ctrl_status
                          INFO  [uorb] Advertising remote topic actuator_controls_0
                          INFO  [muorb] SLPI: Advertising remote topic commander_state
                          INFO  [muorb] SLPI: Advertising remote topic vehicle_status_flags
                          INFO  [muorb] SLPI: Advertising remote topic vehicle_command
                          INFO  [commander] Handling Commander command 176
                          INFO  [muorb] SLPI: Advertising remote topic vehicle_command_ack
                          INFO  [mavlink] mode: Onboard, data rate: 100000 B/s on udp port 14556 remote port 14557
                          INFO  [muorb] SLPI: Marking DeviceNode(vehicle_command) as advertised in process_remote_topic
                          INFO  [uorb] Advertising remote topic estimator_sensor_bias
                          INFO  [px4] Startup script returned successfully
                          pxh> INFO  [muorb] SLPI: Advertising remote topic telemetry_status
                          INFO  [muorb] SLPI: 34702200: EKF aligned, (baro hgt, IMU buf: 11, OBS buf: 8)
                          INFO  [uorb] Advertising remote topic vehicle_attitude
                          INFO  [uorb] Advertising remote topic vehicle_attitude_setpoint
                          INFO  [uorb] Advertising remote topic vehicle_rates_setpoint
                          

                          Inside the pxh console, we ran the gps status command and got:

                          INFO  [gps] not running
                          Command 'gps' failed, returned -1.
                          

                          I find this strange since when we ran the voxl-px4 service it had the start command for the gps. Since gps was not running, I decided to test again the gps start by doing gps stop and then gps start -d 7 -b 115200, that appeared on the output of ```voxl-px4``. The console output was:

                          ERROR [gps] GPS: failed to open serial port: 7 err: 2
                          

                          We also tried the same with qshell.
                          qshell gps status outputted:

                          pxh> qshell gps status
                          INFO  [qshell] Send cmd: 'gps status'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: gps status
                          INFO  [muorb] SLPI: Main GPS
                          INFO  [muorb] SLPI: protocol: UBX
                          INFO  [muorb] SLPI: status: NOT OK, port: 6, baudrate: 115200
                          INFO  [muorb] SLPI: sat info: disabled
                          INFO  [muorb] SLPI: rate reading: 		     0 B/s
                          INFO  [muorb] SLPI: Ok executing command: gps status
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 318302556, current timestamp 318302557
                          INFO  [qshell] qshell return value timestamp: 318302556, local time: 318308860
                          

                          We also tried to stop and run it again with qshell gps stop and qshell gps start.

                          After this, the output of qshell gps status was:

                          pxh> qshell gps status
                          INFO  [qshell] Send cmd: 'gps status'
                          INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                          INFO  [muorb] SLPI: qshell gotten: gps status
                          INFO  [muorb] SLPI: Main GPS
                          INFO  [muorb] SLPI: protocol: UBX
                          INFO  [muorb] SLPI: status: OK, port: 6, baudrate: 115200
                          INFO  [muorb] SLPI: sat info: disabled
                          INFO  [muorb] SLPI: rate reading: 		   695 B/s
                          INFO  [muorb] SLPI: rate position: 		  5.00 Hz
                          INFO  [muorb] SLPI: rate velocity: 		  5.00 Hz
                          INFO  [muorb] SLPI: rate publication:		  5.00 Hz
                          INFO  [muorb] SLPI: rate RTCM injection:	  0.00 Hz
                          INFO  [muorb] SLPI:  sensor_gps_s
                          
                          INFO  [muorb] SLPI: 	timestamp: 405957015  (0.197956 seconds ago)
                          
                          INFO  [muorb] SLPI: 	time_utc_usec: 0
                          
                          INFO  [muorb] SLPI: 	lat: 0
                          
                          INFO  [muorb] SLPI: 	lon: 0
                          
                          INFO  [muorb] SLPI: 	alt: -17000
                          
                          INFO  [muorb] SLPI: 	alt_ellipsoid: 0
                          
                          INFO  [muorb] SLPI: 	s_variance_m_s: 1000.0001
                          
                          INFO  [muorb] SLPI: 	c_variance_rad: 3.1416
                          
                          INFO  [muorb] SLPI: 	eph: 4294967.5000
                          
                          INFO  [muorb] SLPI: 	epv: 3772217.5000
                          
                          INFO  [muorb] SLPI: 	hdop: 99.9900
                          
                          INFO  [muorb] SLPI: 	vdop: 99.9900
                          
                          INFO  [muorb] SLPI: 	noise_per_ms: 93
                          
                          INFO  [muorb] SLPI: 	jamming_indicator: 30
                          
                          INFO  [muorb] SLPI: 	vel_m_s: 0.0000
                          
                          INFO  [muorb] SLPI: 	vel_n_m_s: 0.0000
                          
                          INFO  [muorb] SLPI: 	vel_e_m_s: 0.0000
                          
                          INFO  [muorb] SLPI: 	vel_d_m_s: 0.0000
                          
                          INFO  [muorb] SLPI: 	cog_rad: 0.0000
                          
                          INFO  [muorb] SLPI: 	timestamp_time_relative: 0
                          
                          INFO  [muorb] SLPI: 	heading: -nan
                          
                          INFO  [muorb] SLPI: 	heading_offset: 0.0000
                          
                          INFO  [muorb] SLPI: 	fix_type: 0
                          
                          INFO  [muorb] SLPI: 	jamming_state: 0
                          
                          INFO  [muorb] SLPI: 	vel_ned_valid: False
                          
                          INFO  [muorb] SLPI: 	satellites_used: 0
                          
                          INFO  [muorb] SLPI: Ok executing command: gps status
                          INFO  [muorb] SLPI: Sending qshell retval with timestamp 406155973, current timestamp 406155974
                          INFO  [qshell] qshell return value timestamp: 406155973, local time: 406158054
                          

                          Any ideia of what the problem could be?

                          I also noticed the following errors on the voxl-px4 output:

                          ERROR [muorb] SLPI: px4io read failed
                          ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                          ERROR [muorb] SLPI: IO not installed
                          ERROR [muorb] SLPI: Detection attempt 2 failed
                          ERROR [muorb] SLPI: Detection attempt 1 failed
                          ERROR [muorb] SLPI: Detection attempt 0 failed
                          ERROR [muorb] SLPI: Failed to execute command: px4io detect
                          

                          Is this normal?

                          Thank you.

                          Eric KatzfeyE Offline
                          Eric KatzfeyE Offline
                          Eric Katzfey
                          ModalAI Team
                          wrote on last edited by Eric Katzfey
                          #12

                          @andremoura It looks like there are at least 2 different issues here. One is that when you do see it working it has poor performance and doesn't get a lock. That is why I wanted to compare against other drones or other GPS units. If other units are working fine and this one isn't then maybe it's a faulty unit. If they all have poor performance then maybe it's something about the test location.

                          A 1 Reply Last reply
                          0
                          • A Andre Moura

                            @Eric-Katzfey Unfortunately the GPS is not working as expected. Yesterday we were momentarily able to get between 9-12 satellites, which I think is a little low. With that number of satellites, we were not able to get GPS lock on the drone, QGC displayed an error related to GPS accuracy too low. Even after allowing to arm without GPS lock and flying at about 15 m, the number of satellites didn't change and we couldn't even put the drone in position mode, because of not being GPS locked.

                            What we did to be able to even get those satellites was systemctl disable voxl-px4 , systemctl disable voxl-mavlink-server, rebooted the drone and, in two different ssh shells, ran both services manually.

                            Today, using this approach, I'm not even able to get any satellites at all. All the following tests were done with the ekf2_outdoor_gps_mag.params configuration file from your Gitlab.

                            The output from voxl-px4 was:

                            voxl2:~$ voxl-px4
                            Found DSP signature file
                            INFO  [px4] mlockall() enabled. PX4's virtual address space is locked into RAM.
                            INFO  [px4] assuming working directory is rootfs, no symlinks needed.
                            
                            ______  __   __    ___ 
                            | ___ \ \ \ / /   /   |
                            | |_/ /  \ V /   / /| |
                            |  __/   /   \  / /_| |
                            | |     / /^\ \ \___  |
                            \_|     \/   \/     |_/
                            
                            px4 starting.
                            
                            INFO  [px4] Calling startup script: /bin/sh /etc/modalai/voxl-px4.config 0
                            Running on M0054
                            INFO  [muorb] SLPI: Creating qurt thread hpwork
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_hpwork with tid 82
                            INFO  [muorb] SLPI: Creating qurt thread lpwork
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_lpwork with tid 81
                            INFO  [muorb] SLPI: Creating qurt thread wkr_hrt
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wkr_hrt with tid 80
                            INFO  [muorb] SLPI: Creating qurt thread client_sync_thread
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_client_sync_thread with tid 79
                            INFO  [muorb] SLPI: Creating qurt thread wq_manager
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_manager with tid 78
                            INFO  [muorb] SLPI: Creating qurt thread qshell
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_qshell with tid 77
                            INFO  [qshell] Send cmd: 'icm42688p start -s'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: icm42688p start -s
                            INFO  [muorb] SLPI: Creating qurt thread wq_SPI1
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_SPI1 with tid 76
                            INFO  [muorb] SLPI: *** SPI Device ID 0x26000a 2490378
                            INFO  [uorb] Advertising remote topic sensor_accel
                            INFO  [uorb] Marking DeviceNode(parameter_server_set_used_request) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: Marking DeviceNode(parameter_server_set_used_response) as advertised in process_remote_to
                            INFO  [uorb] Advertising remote topic sensor_gyro
                            INFO  [uorb] Advertising remote topic imu_server
                            INFO  [muorb] SLPI: on SPI bus 1
                            INFO  [muorb] SLPI: icm42688p #0 on SPI bus 1 (devid=0x0)
                            INFO  [muorb] SLPI: 
                            
                            INFO  [muorb] SLPI: Ok executing command: icm42688p start -s
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 23323798, current timestamp 23323799
                            INFO  [uorb] Advertising remote topic qshell_retval
                            INFO  [qshell] qshell return value timestamp: 23323798, local time: 23327958
                            INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_reset_request) as advertised in process_remote_topic
                            ERROR [muorb] SLPI: Cannot reset all parameters on client side
                            INFO  [uorb] Marking DeviceNode(parameter_client_reset_response) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: Advertising remote topic parameter_update
                            INFO  [muorb] SLPI: Marking DeviceNode(parameter_client_set_value_request) as advertised in process_remote_to
                            INFO  [uorb] Marking DeviceNode(parameter_client_set_value_response) as advertised in process_remote_topic
                            INFO  [logger] logger started (mode=all)
                            Starting Holybro magnetometer
                            INFO  [qshell] Send cmd: 'ist8310 start -R 10 -X -b 1'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: ist8310 start -R 10 -X -b 1
                            INFO  [muorb] SLPI: Creating qurt thread wq_I2C1
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C1 with tid 75
                            INFO  [muorb] SLPI: *** I2C Device ID 0x60e09 396809
                            INFO  [muorb] SLPI: ist8310 #0 on I2C bus 1 (external)
                            
                            INFO  [muorb] SLPI: Ok executing command: ist8310 start -R 10 -X -b 1
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26405496, current timestamp 26405497
                            INFO  [qshell] qshell return value timestamp: 26405496, local time: 26406391
                            Starting Holybro LED driver
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                            INFO  [muorb] SLPI: *** I2C Device ID 0x7b3809 8075273
                            INFO  [qshell] Send cmd: 'rgbled_ncp5623c start -X -b 1 -f 400 -a 56'
                            INFO  [muorb] SLPI: rgbled_ncp5623c #0 on I2C bus 1 (external)
                            
                            INFO  [muorb] SLPI: Ok executing command: rgbled_ncp5623c start -X -b 1 -f 400 -a 56
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26445017, current timestamp 26445018
                            INFO  [qshell] qshell return value timestamp: 26445017, local time: 26445673
                            INFO  [qshell] Send cmd: 'icp10100 start -I -b 5'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: icp10100 start -I -b 5
                            INFO  [muorb] SLPI: Creating qurt thread wq_I2C5
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C5 with tid 74
                            INFO  [muorb] SLPI: *** I2C Device ID 0x9c6329 10249001
                            INFO  [muorb] SLPI: probe probe succeeded. data = 0x1 0x48
                            INFO  [muorb] SLPI: icp10100 #0 on I2C bus 5
                            
                            INFO  [muorb] SLPI: Ok executing command: icp10100 start -I -b 5
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26486020, current timestamp 26486021
                            INFO  [qshell] qshell return value timestamp: 26486020, local time: 26487682
                            INFO  [uorb] Advertising remote topic sensor_mag
                            INFO  [qshell] Send cmd: 'modalai_esc start'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: modalai_esc start
                            INFO  [muorb] SLPI: Creating qurt thread wq_hp_default
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_hp_default with tid 73
                            INFO  [uorb] Advertising remote topic sensor_baro
                            INFO  [uorb] Advertising remote topic test_motor
                            INFO  [muorb] SLPI: Ok executing command: modalai_esc start
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26546800, current timestamp 26546801
                            INFO  [muorb] SLPI: Opened UART ESC device
                            INFO  [qshell] qshell return value timestamp: 26546800, local time: 26548152
                            INFO  [qshell] Send cmd: 'mixer load /dev/uart_esc quad_x.main.mix'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: mixer load /dev/uart_esc quad_x.main.mix
                            INFO  [muorb] SLPI: Creating qurt thread wq_rate_ctrl
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_rate_ctrl with tid 71
                            INFO  [muorb] SLPI: Ok executing command: mixer load /dev/uart_esc quad_x.main.mix
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26609932, current timestamp 26609933
                            INFO  [qshell] qshell return value timestamp: 26609932, local time: 26611050
                            INFO  [uorb] Advertising remote topic actuator_outputs
                            INFO  [uorb] Advertising remote topic multirotor_motor_limits
                            INFO  [qshell] Send cmd: 'voxlpm start -X -b 2'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: voxlpm start -X -b 2
                            INFO  [muorb] SLPI: Creating qurt thread wq_I2C2
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_I2C2 with tid 4169
                            INFO  [muorb] SLPI: *** I2C Device ID 0x784411 7881745
                            INFO  [uorb] Advertising remote topic battery_status
                            INFO  [muorb] SLPI: voxlpm #0 on I2C bus 2 (external)
                            
                            INFO  [muorb] SLPI: Ok executing command: voxlpm start -X -b 2
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26674290, current timestamp 26674291
                            INFO  [qshell] qshell return value timestamp: 26674290, local time: 26675325
                            INFO  [uorb] Advertising remote topic power_monitor
                            Starting Holybro GPS
                            INFO  [qshell] Send cmd: 'gps start -d 7 -b 115200'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: gps start -d 7 -b 115200
                            INFO  [muorb] SLPI: Creating qurt thread gps
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_gps with tid 70
                            INFO  [muorb] SLPI: Ok executing command: gps start -d 7 -b 115200
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26712883, current timestamp 26712884
                            INFO  [qshell] qshell return value timestamp: 26712883, local time: 26713903
                            INFO  [qshell] Send cmd: 'px4io detect'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: px4io detect
                            INFO  [muorb] SLPI: serial port fd 2
                            ERROR [muorb] SLPI: px4io read failed
                            ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                            ERROR [muorb] SLPI: IO not installed
                            ERROR [muorb] SLPI: Detection attempt 2 failed
                            ERROR [muorb] SLPI: Detection attempt 1 failed
                            ERROR [muorb] SLPI: Detection attempt 0 failed
                            ERROR [muorb] SLPI: Failed to execute command: px4io detect
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26777758, current timestamp 26777759
                            INFO  [qshell] cmd returned with: -17
                            INFO  [qshell] qshell return value timestamp: 26777758, local time: 26778378
                            ERROR [qshell] Command failed
                            M0065 not detected, starting Spektrum RC driver
                            INFO  [qshell] Send cmd: 'spektrum_rc start -d 8'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: spektrum_rc start -d 8
                            INFO  [muorb] SLPI: Creating qurt thread spektrum_rc_main
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_spektrum_rc_main with tid 67
                            INFO  [muorb] SLPI: Ok executing command: spektrum_rc start -d 8
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 26822566, current timestamp 26822566
                            INFO  [qshell] qshell return value timestamp: 26822566, local time: 26823292
                            INFO  [qshell] Send cmd: 'sensors start'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: sensors start
                            INFO  [muorb] SLPI: Creating qurt thread wq_nav_and_controllers
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_nav_and_controllers with tid 66
                            INFO  [muorb] SLPI: Ok executing command: sensors start
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 27885493, current timestamp 27885494
                            INFO  [uorb] Advertising remote topic vehicle_angular_acceleration
                            INFO  [uorb] Advertising remote topic vehicle_angular_velocity
                            INFO  [qshell] qshell return value timestamp: 27885493, local time: 27890054
                            INFO  [muorb] SLPI: Creating qurt thread wq_INS0
                            
                            INFO  [muorb] SLPI: Successfully created px4 task PX4_wq_INS0 with tid 65
                            INFO  [uorb] Advertising remote topic vehicle_imu
                            INFO  [uorb] Advertising remote topic vehicle_imu_status
                            INFO  [uorb] Advertising remote topic sensors_status_imu
                            INFO  [uorb] Advertising remote topic vehicle_acceleration
                            INFO  [uorb] Advertising remote topic vehicle_air_data
                            INFO  [uorb] Advertising remote topic sensor_selection
                            INFO  [uorb] Advertising remote topic sensor_combined
                            INFO  [qshell] Send cmd: 'ekf2 start'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: ekf2 start
                            INFO  [muorb] SLPI: Ok executing command: ekf2 start
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 28080230, current timestamp 28080231
                            INFO  [qshell] qshell return value timestamp: 28080230, local time: 28081490
                            INFO  [uorb] Advertising remote topic ekf2_timestamps
                            INFO  [qshell] Send cmd: 'mc_pos_control start'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: mc_pos_control start
                            INFO  [muorb] SLPI: Ok executing command: mc_pos_control start
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 28141872, current timestamp 28141873
                            INFO  [qshell] qshell return value timestamp: 28141872, local time: 28143606
                            INFO  [qshell] Send cmd: 'mc_att_control start'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: mc_att_control start
                            INFO  [muorb] SLPI: Ok executing command: mc_att_control start
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 28193889, current timestamp 28193890
                            INFO  [qshell] qshell return value timestamp: 28193889, local time: 28194908
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: mc_rate_control start
                            INFO  [qshell] Send cmd: 'mc_rate_control start'
                            INFO  [muorb] SLPI: Ok executing command: mc_rate_control start
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 28277320, current timestamp 28277321
                            INFO  [qshell] qshell return value timestamp: 28277320, local time: 28277781
                            INFO  [qshell] Send cmd: 'mc_hover_thrust_estimator start'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: mc_hover_thrust_estimator start
                            INFO  [muorb] SLPI: Ok executing command: mc_hover_thrust_estimator start
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 28316740, current timestamp 28316741
                            INFO  [qshell] qshell return value timestamp: 28316740, local time: 28317757
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [qshell] Send cmd: 'land_detector start multicopter'
                            INFO  [muorb] SLPI: qshell gotten: land_detector start multicopter
                            INFO  [muorb] SLPI: Ok executing command: land_detector start multicopter
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 28355231, current timestamp 28355232
                            INFO  [qshell] qshell return value timestamp: 28355231, local time: 28356012
                            INFO  [uorb] Advertising remote topic vehicle_land_detected
                            INFO  [muorb] SLPI: 28570980: reset position to last known position
                            INFO  [muorb] SLPI: 28570980: reset velocity to zero
                            INFO  [uorb] Advertising remote topic vehicle_local_position
                            INFO  [uorb] Advertising remote topic vehicle_odometry
                            INFO  [uorb] Advertising remote topic estimator_states
                            INFO  [uorb] Advertising remote topic estimator_status
                            INFO  [uorb] Advertising remote topic estimator_status_flags
                            INFO  [uorb] Advertising remote topic estimator_innovations
                            INFO  [uorb] Advertising remote topic estimator_innovation_test_ratios
                            INFO  [uorb] Advertising remote topic estimator_innovation_variances
                            INFO  [dataman] Unknown restart, data manager file '/data/px4/dataman' size is 11798680 bytes
                            INFO  [muorb] SLPI: Advertising remote topic position_setpoint_triplet
                            INFO  [commander] LED: open /dev/led0 failed (22)
                            INFO  [muorb] SLPI: Advertising remote topic led_control
                            INFO  [muorb] SLPI: Advertising remote topic tune_control
                            INFO  [PreFlightCheck] Failed EKF health preflight check while waiting for filter to settle
                            INFO  [muorb] SLPI: Advertising remote topic vehicle_control_mode
                            INFO  [muorb] SLPI: Advertising remote topic vehicle_status
                            INFO  [muorb] SLPI: Advertising remote topic actuator_armed
                            INFO  [uorb] Advertising remote topic rate_ctrl_status
                            INFO  [uorb] Advertising remote topic actuator_controls_0
                            INFO  [muorb] SLPI: Advertising remote topic commander_state
                            INFO  [muorb] SLPI: Advertising remote topic vehicle_status_flags
                            INFO  [muorb] SLPI: Advertising remote topic vehicle_command
                            INFO  [commander] Handling Commander command 176
                            INFO  [muorb] SLPI: Advertising remote topic vehicle_command_ack
                            INFO  [mavlink] mode: Onboard, data rate: 100000 B/s on udp port 14556 remote port 14557
                            INFO  [muorb] SLPI: Marking DeviceNode(vehicle_command) as advertised in process_remote_topic
                            INFO  [uorb] Advertising remote topic estimator_sensor_bias
                            INFO  [px4] Startup script returned successfully
                            pxh> INFO  [muorb] SLPI: Advertising remote topic telemetry_status
                            INFO  [muorb] SLPI: 34702200: EKF aligned, (baro hgt, IMU buf: 11, OBS buf: 8)
                            INFO  [uorb] Advertising remote topic vehicle_attitude
                            INFO  [uorb] Advertising remote topic vehicle_attitude_setpoint
                            INFO  [uorb] Advertising remote topic vehicle_rates_setpoint
                            

                            Inside the pxh console, we ran the gps status command and got:

                            INFO  [gps] not running
                            Command 'gps' failed, returned -1.
                            

                            I find this strange since when we ran the voxl-px4 service it had the start command for the gps. Since gps was not running, I decided to test again the gps start by doing gps stop and then gps start -d 7 -b 115200, that appeared on the output of ```voxl-px4``. The console output was:

                            ERROR [gps] GPS: failed to open serial port: 7 err: 2
                            

                            We also tried the same with qshell.
                            qshell gps status outputted:

                            pxh> qshell gps status
                            INFO  [qshell] Send cmd: 'gps status'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: gps status
                            INFO  [muorb] SLPI: Main GPS
                            INFO  [muorb] SLPI: protocol: UBX
                            INFO  [muorb] SLPI: status: NOT OK, port: 6, baudrate: 115200
                            INFO  [muorb] SLPI: sat info: disabled
                            INFO  [muorb] SLPI: rate reading: 		     0 B/s
                            INFO  [muorb] SLPI: Ok executing command: gps status
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 318302556, current timestamp 318302557
                            INFO  [qshell] qshell return value timestamp: 318302556, local time: 318308860
                            

                            We also tried to stop and run it again with qshell gps stop and qshell gps start.

                            After this, the output of qshell gps status was:

                            pxh> qshell gps status
                            INFO  [qshell] Send cmd: 'gps status'
                            INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
                            INFO  [muorb] SLPI: qshell gotten: gps status
                            INFO  [muorb] SLPI: Main GPS
                            INFO  [muorb] SLPI: protocol: UBX
                            INFO  [muorb] SLPI: status: OK, port: 6, baudrate: 115200
                            INFO  [muorb] SLPI: sat info: disabled
                            INFO  [muorb] SLPI: rate reading: 		   695 B/s
                            INFO  [muorb] SLPI: rate position: 		  5.00 Hz
                            INFO  [muorb] SLPI: rate velocity: 		  5.00 Hz
                            INFO  [muorb] SLPI: rate publication:		  5.00 Hz
                            INFO  [muorb] SLPI: rate RTCM injection:	  0.00 Hz
                            INFO  [muorb] SLPI:  sensor_gps_s
                            
                            INFO  [muorb] SLPI: 	timestamp: 405957015  (0.197956 seconds ago)
                            
                            INFO  [muorb] SLPI: 	time_utc_usec: 0
                            
                            INFO  [muorb] SLPI: 	lat: 0
                            
                            INFO  [muorb] SLPI: 	lon: 0
                            
                            INFO  [muorb] SLPI: 	alt: -17000
                            
                            INFO  [muorb] SLPI: 	alt_ellipsoid: 0
                            
                            INFO  [muorb] SLPI: 	s_variance_m_s: 1000.0001
                            
                            INFO  [muorb] SLPI: 	c_variance_rad: 3.1416
                            
                            INFO  [muorb] SLPI: 	eph: 4294967.5000
                            
                            INFO  [muorb] SLPI: 	epv: 3772217.5000
                            
                            INFO  [muorb] SLPI: 	hdop: 99.9900
                            
                            INFO  [muorb] SLPI: 	vdop: 99.9900
                            
                            INFO  [muorb] SLPI: 	noise_per_ms: 93
                            
                            INFO  [muorb] SLPI: 	jamming_indicator: 30
                            
                            INFO  [muorb] SLPI: 	vel_m_s: 0.0000
                            
                            INFO  [muorb] SLPI: 	vel_n_m_s: 0.0000
                            
                            INFO  [muorb] SLPI: 	vel_e_m_s: 0.0000
                            
                            INFO  [muorb] SLPI: 	vel_d_m_s: 0.0000
                            
                            INFO  [muorb] SLPI: 	cog_rad: 0.0000
                            
                            INFO  [muorb] SLPI: 	timestamp_time_relative: 0
                            
                            INFO  [muorb] SLPI: 	heading: -nan
                            
                            INFO  [muorb] SLPI: 	heading_offset: 0.0000
                            
                            INFO  [muorb] SLPI: 	fix_type: 0
                            
                            INFO  [muorb] SLPI: 	jamming_state: 0
                            
                            INFO  [muorb] SLPI: 	vel_ned_valid: False
                            
                            INFO  [muorb] SLPI: 	satellites_used: 0
                            
                            INFO  [muorb] SLPI: Ok executing command: gps status
                            INFO  [muorb] SLPI: Sending qshell retval with timestamp 406155973, current timestamp 406155974
                            INFO  [qshell] qshell return value timestamp: 406155973, local time: 406158054
                            

                            Any ideia of what the problem could be?

                            I also noticed the following errors on the voxl-px4 output:

                            ERROR [muorb] SLPI: px4io read failed
                            ERROR [muorb] SLPI: px4io io_reg_get(0,0,1): data error -5
                            ERROR [muorb] SLPI: IO not installed
                            ERROR [muorb] SLPI: Detection attempt 2 failed
                            ERROR [muorb] SLPI: Detection attempt 1 failed
                            ERROR [muorb] SLPI: Detection attempt 0 failed
                            ERROR [muorb] SLPI: Failed to execute command: px4io detect
                            

                            Is this normal?

                            Thank you.

                            Eric KatzfeyE Offline
                            Eric KatzfeyE Offline
                            Eric Katzfey
                            ModalAI Team
                            wrote on last edited by
                            #13

                            @andremoura The other issue appears to be that you don't always get the driver to communicate with the GPS unit on startup. The start line in /etc/modalai/voxl-px4.config is qshell gps start -d 7 -b 115200. When you did qshell gps stop and then qshell gps start was it started with qshell gps start -d 7 -b 115200 or just qshell gps start?

                            A 1 Reply Last reply
                            0
                            • Eric KatzfeyE Eric Katzfey

                              @andremoura Yes, the errors related to px4io detection are expected since you do not have a px4io unit attached to the drone. And yes, you have to interact with things on the DSP (where the GPS driver runs) with qshell as you already figured out. Do you have any other Sentinel drones that you can compare against? Or other types of drones with GPS to compare against? When you are able to get 9 to 12 satellites what does qshell gps status show? It does appear to be wired up correctly as sometimes it is obviously communicating with the GPS unit.

                              A Offline
                              A Offline
                              Andre Moura
                              Contributor
                              wrote on last edited by
                              #14

                              @Eric-Katzfey We don't have any other Sentinel drones. We have other drones with GPS, that detect at least the same or higher number of satellites but they all are able to GPS lock.

                              When we had that number of satellites, the qshell gps status seemed ok with number of satellites, latitude and longitude, but we aren't able to replicate that test right now because of bad weather conditions.

                              1 Reply Last reply
                              0
                              • Eric KatzfeyE Eric Katzfey

                                @andremoura It looks like there are at least 2 different issues here. One is that when you do see it working it has poor performance and doesn't get a lock. That is why I wanted to compare against other drones or other GPS units. If other units are working fine and this one isn't then maybe it's a faulty unit. If they all have poor performance then maybe it's something about the test location.

                                A Offline
                                A Offline
                                Andre Moura
                                Contributor
                                wrote on last edited by
                                #15

                                @Eric-Katzfey I will test the Sentinel drone on a new better location next week, if weather gets better, and I will get back to you.

                                1 Reply Last reply
                                0
                                • Eric KatzfeyE Eric Katzfey

                                  @andremoura The other issue appears to be that you don't always get the driver to communicate with the GPS unit on startup. The start line in /etc/modalai/voxl-px4.config is qshell gps start -d 7 -b 115200. When you did qshell gps stop and then qshell gps start was it started with qshell gps start -d 7 -b 115200 or just qshell gps start?

                                  A Offline
                                  A Offline
                                  Andre Moura
                                  Contributor
                                  wrote on last edited by
                                  #16

                                  @Eric-Katzfey GPS mostly hasn't beeen working on startup again.

                                  We started it with qshell gps start, but we also tested qshell gps start -d 7 -b 115200. Both commands only worked a few times, we are not able to consistently start the GPS, having to stop and start again the service a few times before it works.

                                  Eric KatzfeyE 1 Reply Last reply
                                  0
                                  • A Andre Moura

                                    @Eric-Katzfey GPS mostly hasn't beeen working on startup again.

                                    We started it with qshell gps start, but we also tested qshell gps start -d 7 -b 115200. Both commands only worked a few times, we are not able to consistently start the GPS, having to stop and start again the service a few times before it works.

                                    Eric KatzfeyE Offline
                                    Eric KatzfeyE Offline
                                    Eric Katzfey
                                    ModalAI Team
                                    wrote on last edited by
                                    #17

                                    @andremoura Is the LED on top of the unit (multicolor LED) coming on?

                                    A 1 Reply Last reply
                                    0
                                    • Eric KatzfeyE Eric Katzfey

                                      @andremoura Is the LED on top of the unit (multicolor LED) coming on?

                                      A Offline
                                      A Offline
                                      Andre Moura
                                      Contributor
                                      wrote on last edited by Andre Moura
                                      #18

                                      @Eric-Katzfey said in GPS not working:

                                      @andremoura Is the LED on top of the unit (multicolor LED) coming on?

                                      Yes, every time voxl-px4 is running.

                                      Eric KatzfeyE 1 Reply Last reply
                                      0
                                      • A Andre Moura

                                        @Eric-Katzfey said in GPS not working:

                                        @andremoura Is the LED on top of the unit (multicolor LED) coming on?

                                        Yes, every time voxl-px4 is running.

                                        Eric KatzfeyE Offline
                                        Eric KatzfeyE Offline
                                        Eric Katzfey
                                        ModalAI Team
                                        wrote on last edited by
                                        #19

                                        @andremoura Okay, good. Holybro changed some of the components in their unit at one point and if that LED wasn't coming on it could indicate that it was one of the older units. But since it is on that indicates to me that it is the correct version of the Holybro unit.

                                        1 Reply Last reply
                                        0
                                        • A Offline
                                          A Offline
                                          Andre Moura
                                          Contributor
                                          wrote on last edited by
                                          #20

                                          @Eric-Katzfey Ok, new find! It seems that when voxl-px4 runs, the GPS service isn't able to start immediately, but if we wait a for a bit and start it manually, it works.

                                          Seems like something isn't ready to start immediately after voxl-px4.

                                          Eric KatzfeyE 1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          ModalAI
                                          Categories Recent Tags ModalAI.com Docs
                                          © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups