@JoshRebello I'm sorry, I don't remember the value.
Posts made by Andre Moura
-
RE: Sentinel (VOXL2) not booting/not flashing
-
RE: Sentinel (VOXL2) not booting/not flashing
@JoshRebello We solved this issue with an RMA, motherboard was damaged according to the RMA report.
-
RE: Sentinel (VOXL2) not booting/not flashing
@tom I tried it extensively with different cables/ports/computers during today with no result.
-
RE: Sentinel (VOXL2) not booting/not flashing
@tom Definitely not on the VOXL 2, I checked it beacause of the output of
lsusb
that I showed previously.
Add-on board? Is there another switch on the 5G board or one of the Sentinel boards? I think that is a very unlikely scenario, the drone was working one day and the next it wasn't, without any changes. -
RE: Sentinel (VOXL2) not booting/not flashing
@Adrian-Hidalgo The LEDs are always solid green.
Did what you suggested, but the install script didn't work. Got this:Installer Version: 0.8 Image Version: 1.5.5 [ERROR] No device found in adb or fastboot [INFO] Failed to put device in fastboot mode, exiting
-
RE: Additional camera and USB interface
@Chad-Sweet Ok, thank you for clarifying!
-
RE: Sentinel (VOXL2) not booting/not flashing
@Adrian-Hidalgo We have been powering the drone only with batteries, never used an external power supply.
On our last tests, we were using only the services already available on the VOXL 2. With a minor modification to the voxl-tag-detector service, to use the front stereo pair, instead of the tracking camera. -
Sentinel (VOXL2) not booting/not flashing
Hello,
Our Sentinel drone was working yesterday when we left work, but this morning it wouldn't boot: no Wi-Fi network, no devices listed with
adb devices
, lights on the ESC don't stay on after the first seconds, and no lights on the GPS sensor.
The LEDs on the VOXL 2 main board and 5G board all seem to be on their normal state.I think it is important to say that, at this point,
lsusb
was outputting:Bus 004 Device 004: ID 05c6:9008 Qualcomm, Inc. Gobi Wireless Modem (QDL mode)
, and not something like
Bus 004 Device 033: ID 05c6:901d Qualcomm, Inc. KONA-QRD _SN:FDF5950D
as we were expecting from seeing this post. We found theQDL mode
part to be a little bit odd, but please confirm if this is normal for a Sentinel drone that was unaltered (HW and SW).After discovering this, we removed the VOXL2 board from the drone and tested
fastboot
.
For this, we carefully followed all the steps on this tutorial, but no devices were listed by thefastboot devices
command.Since this was also not working, we followed the VOXL 2 QDL Guide to try and flash the VOXL2 QDL Image 14.1a_1.1.2. What we got was:
andre@andre:~/1.1.2-M0054-14.1a-FLAT-V3/ufs$ sudo qdl --debug --storage ufs --include . prog_firehose_ddr.elf rawprogram_unsparse0.xml rawprogram1.xml rawprogram2.xml rawprogram3.xml rawprogram4.xml rawprogram5.xml patch0.xml patch1.xml patch2.xml patch3.xml patch4.xml patch5.xml Waiting for EDL device HELLO version: 0x2 compatible: 0x1 max_len: 1024 mode: 0 READ64 image: 13 offset: 0x0 length: 0x40 READ64 image: 13 offset: 0x40 length: 0x310 READ64 image: 13 offset: 0x1000 length: 0x1000 READ64 image: 13 offset: 0x2000 length: 0xc48 READ64 image: 13 offset: 0x3000 length: 0x1000 READ64 image: 13 offset: 0x4000 length: 0x1000 READ64 image: 13 offset: 0x5000 length: 0x1000 READ64 image: 13 offset: 0x6000 length: 0x1000 READ64 image: 13 offset: 0x7000 length: 0x1000 READ64 image: 13 offset: 0x8000 length: 0x1000 READ64 image: 13 offset: 0x9000 length: 0x1000 READ64 image: 13 offset: 0xa000 length: 0x1000 READ64 image: 13 offset: 0xb000 length: 0x1000 READ64 image: 13 offset: 0xc000 length: 0x1000 READ64 image: 13 offset: 0xd000 length: 0x1000 READ64 image: 13 offset: 0xe000 length: 0x1000 READ64 image: 13 offset: 0xf000 length: 0x1000 READ64 image: 13 offset: 0x10000 length: 0x1000 READ64 image: 13 offset: 0x11000 length: 0x1000 READ64 image: 13 offset: 0x12000 length: 0x1000 READ64 image: 13 offset: 0x13000 length: 0x1000 READ64 image: 13 offset: 0x14000 length: 0x1000 READ64 image: 13 offset: 0x15000 length: 0x1000 READ64 image: 13 offset: 0x16000 length: 0x1000 READ64 image: 13 offset: 0x17000 length: 0x1000 READ64 image: 13 offset: 0x18000 length: 0x1000 READ64 image: 13 offset: 0x19000 length: 0x1000 READ64 image: 13 offset: 0x1a000 length: 0x1000 READ64 image: 13 offset: 0x1b000 length: 0x1000 READ64 image: 13 offset: 0x1c000 length: 0x1000 READ64 image: 13 offset: 0x1d000 length: 0x1000 READ64 image: 13 offset: 0x1e000 length: 0x1000 READ64 image: 13 offset: 0x1f000 length: 0x1000 READ64 image: 13 offset: 0x20000 length: 0x1000 READ64 image: 13 offset: 0x21000 length: 0x1000 READ64 image: 13 offset: 0x22000 length: 0x1000 READ64 image: 13 offset: 0x23000 length: 0x1000 READ64 image: 13 offset: 0x24000 length: 0x1000 READ64 image: 13 offset: 0x25000 length: 0x1000 READ64 image: 13 offset: 0x26000 length: 0x1000 READ64 image: 13 offset: 0x27000 length: 0x1000 READ64 image: 13 offset: 0x28000 length: 0x1000 READ64 image: 13 offset: 0x29000 length: 0x1000 READ64 image: 13 offset: 0x2a000 length: 0x1000 READ64 image: 13 offset: 0x2b000 length: 0x1000 READ64 image: 13 offset: 0x2c000 length: 0x1000 READ64 image: 13 offset: 0x2d000 length: 0x1000 READ64 image: 13 offset: 0x2e000 length: 0x1000 READ64 image: 13 offset: 0x2f000 length: 0x1000 READ64 image: 13 offset: 0x30000 length: 0x1000 READ64 image: 13 offset: 0x31000 length: 0x1000 READ64 image: 13 offset: 0x32000 length: 0x1000 READ64 image: 13 offset: 0x33000 length: 0x1000 READ64 image: 13 offset: 0x34000 length: 0x1000 READ64 image: 13 offset: 0x35000 length: 0x1000 READ64 image: 13 offset: 0x36000 length: 0x1000 READ64 image: 13 offset: 0x37000 length: 0x1000 READ64 image: 13 offset: 0x38000 length: 0x1000 READ64 image: 13 offset: 0x39000 length: 0x1000 READ64 image: 13 offset: 0x3a000 length: 0x1000 READ64 image: 13 offset: 0x3b000 length: 0x1000 READ64 image: 13 offset: 0x3c000 length: 0x1000 READ64 image: 13 offset: 0x3d000 length: 0x1000 READ64 image: 13 offset: 0x3e000 length: 0x1000 READ64 image: 13 offset: 0x3f000 length: 0x1000 READ64 image: 13 offset: 0x40000 length: 0x1000 READ64 image: 13 offset: 0x41000 length: 0x1000 READ64 image: 13 offset: 0x42000 length: 0x1000 READ64 image: 13 offset: 0x43000 length: 0x1000 READ64 image: 13 offset: 0x44000 length: 0x1000 READ64 image: 13 offset: 0x45000 length: 0x1000 READ64 image: 13 offset: 0x46000 length: 0x1000 READ64 image: 13 offset: 0x47000 length: 0x1000 READ64 image: 13 offset: 0x48000 length: 0x1000 READ64 image: 13 offset: 0x49000 length: 0x1000 READ64 image: 13 offset: 0x4a000 length: 0x1000 READ64 image: 13 offset: 0x4b000 length: 0x1000 READ64 image: 13 offset: 0x4c000 length: 0x1000 READ64 image: 13 offset: 0x4d000 length: 0x1000 READ64 image: 13 offset: 0x4e000 length: 0x1000 READ64 image: 13 offset: 0x4f000 length: 0x1000 READ64 image: 13 offset: 0x50000 length: 0x1000 READ64 image: 13 offset: 0x51000 length: 0x1000 READ64 image: 13 offset: 0x52000 length: 0x1000 READ64 image: 13 offset: 0x53000 length: 0x1000 READ64 image: 13 offset: 0x54000 length: 0x1000 READ64 image: 13 offset: 0x55000 length: 0x1000 READ64 image: 13 offset: 0x56000 length: 0x1000 READ64 image: 13 offset: 0x57000 length: 0x1000 READ64 image: 13 offset: 0x58000 length: 0x1000 READ64 image: 13 offset: 0x59000 length: 0x1000 READ64 image: 13 offset: 0x5a000 length: 0x1000 READ64 image: 13 offset: 0x5b000 length: 0x1000 READ64 image: 13 offset: 0x5c000 length: 0x1000 READ64 image: 13 offset: 0x5d000 length: 0x1000 READ64 image: 13 offset: 0x5e000 length: 0x1000 READ64 image: 13 offset: 0x5f000 length: 0x1000 READ64 image: 13 offset: 0x60000 length: 0x1000 READ64 image: 13 offset: 0x61000 length: 0x1000 READ64 image: 13 offset: 0x62000 length: 0x1000 READ64 image: 13 offset: 0x63000 length: 0x1000 READ64 image: 13 offset: 0x64000 length: 0x1000 READ64 image: 13 offset: 0x65000 length: 0x16c READ64 image: 13 offset: 0x65170 length: 0x1000 READ64 image: 13 offset: 0x66170 length: 0x1000 READ64 image: 13 offset: 0x67170 length: 0x1000 READ64 image: 13 offset: 0x68170 length: 0x1000 READ64 image: 13 offset: 0x69170 length: 0x1000 READ64 image: 13 offset: 0x6a170 length: 0x1000 READ64 image: 13 offset: 0x6b170 length: 0x1000 READ64 image: 13 offset: 0x6c170 length: 0x1000 READ64 image: 13 offset: 0x6d170 length: 0x1000 READ64 image: 13 offset: 0x6e170 length: 0x1000 READ64 image: 13 offset: 0x6f170 length: 0x1000 READ64 image: 13 offset: 0x70170 length: 0x1000 READ64 image: 13 offset: 0x71170 length: 0x6a0 READ64 image: 13 offset: 0x71810 length: 0x1000 READ64 image: 13 offset: 0x72810 length: 0x1000 READ64 image: 13 offset: 0x73810 length: 0x1000 READ64 image: 13 offset: 0x74810 length: 0x1000 READ64 image: 13 offset: 0x75810 length: 0x1000 READ64 image: 13 offset: 0x76810 length: 0x1000 READ64 image: 13 offset: 0x77810 length: 0x1000 READ64 image: 13 offset: 0x78810 length: 0x1000 READ64 image: 13 offset: 0x79810 length: 0x1000 READ64 image: 13 offset: 0x7a810 length: 0x1000 READ64 image: 13 offset: 0x7b810 length: 0x1000 READ64 image: 13 offset: 0x7c810 length: 0x1000 READ64 image: 13 offset: 0x7d810 length: 0x1000 READ64 image: 13 offset: 0x7e810 length: 0x1000 READ64 image: 13 offset: 0x7f810 length: 0x1000 READ64 image: 13 offset: 0x80810 length: 0x1000 READ64 image: 13 offset: 0x81810 length: 0xcc READ64 image: 13 offset: 0x818e0 length: 0x84 READ64 image: 13 offset: 0x81964 length: 0x1000 READ64 image: 13 offset: 0x82964 length: 0x1000 READ64 image: 13 offset: 0x83964 length: 0x1000 READ64 image: 13 offset: 0x84964 length: 0x1000 READ64 image: 13 offset: 0x85964 length: 0x1000 READ64 image: 13 offset: 0x86964 length: 0x1000 READ64 image: 13 offset: 0x87964 length: 0x1000 READ64 image: 13 offset: 0x88964 length: 0x134 READ64 image: 13 offset: 0x88a98 length: 0x1000 READ64 image: 13 offset: 0x89a98 length: 0x1000 READ64 image: 13 offset: 0x8aa98 length: 0x1000 READ64 image: 13 offset: 0x8ba98 length: 0x1000 READ64 image: 13 offset: 0x8ca98 length: 0x1000 READ64 image: 13 offset: 0x8da98 length: 0x1000 READ64 image: 13 offset: 0x8ea98 length: 0x3f0 READ64 image: 13 offset: 0x8ee88 length: 0x1000 READ64 image: 13 offset: 0x8fe88 length: 0x1000 READ64 image: 13 offset: 0x90e88 length: 0x1000 READ64 image: 13 offset: 0x91e88 length: 0x1000 READ64 image: 13 offset: 0x92e88 length: 0x1000 READ64 image: 13 offset: 0x93e88 length: 0x1000 READ64 image: 13 offset: 0x94e88 length: 0x3f0 READ64 image: 13 offset: 0x95278 length: 0x1000 READ64 image: 13 offset: 0x96278 length: 0x1000 READ64 image: 13 offset: 0x97278 length: 0x1000 READ64 image: 13 offset: 0x98278 length: 0x1000 READ64 image: 13 offset: 0x99278 length: 0x1000 READ64 image: 13 offset: 0x9a278 length: 0x1000 READ64 image: 13 offset: 0x9b278 length: 0x1000 READ64 image: 13 offset: 0x9c278 length: 0x1000 READ64 image: 13 offset: 0x9d278 length: 0x1000 READ64 image: 13 offset: 0x9e278 length: 0x1000 READ64 image: 13 offset: 0x9f278 length: 0x1000 READ64 image: 13 offset: 0xa0278 length: 0x1000 READ64 image: 13 offset: 0xa1278 length: 0x1000 READ64 image: 13 offset: 0xa2278 length: 0x1000 READ64 image: 13 offset: 0xa3278 length: 0x1000 READ64 image: 13 offset: 0xa4278 length: 0x1000 READ64 image: 13 offset: 0xa5278 length: 0x1000 READ64 image: 13 offset: 0xa6278 length: 0x1000 READ64 image: 13 offset: 0xa7278 length: 0x1000 READ64 image: 13 offset: 0xa8278 length: 0x1000 READ64 image: 13 offset: 0xa9278 length: 0x1000 READ64 image: 13 offset: 0xaa278 length: 0x1000 END OF IMAGE image: 13 status: 0 DONE status: 1 FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: Binary build date: Aug 17 2021 @ 23:37:37" /></data> LOG: INFO: Binary build date: Aug 17 2021 @ 23:37:37 FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: Binary build date: Aug 17 2021 @ 23:37:37 " /></data> LOG: INFO: Binary build date: Aug 17 2021 @ 23:37:37 FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: Chip serial num: 1794324607 (0x6af3387f)" /></data> LOG: INFO: Chip serial num: 1794324607 (0x6af3387f) FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: Supported Functions (15):" /></data> LOG: INFO: Supported Functions (15): FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: program" /></data> LOG: INFO: program FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: read" /></data> LOG: INFO: read FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: nop" /></data> LOG: INFO: nop FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: patch" /></data> LOG: INFO: patch FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: configure" /></data> LOG: INFO: configure FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: setbootablestoragedrive" /></data> LOG: INFO: setbootablestoragedrive FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: erase" /></data> LOG: INFO: erase FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: power" /></data> LOG: INFO: power FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: firmwarewrite" /></data> LOG: INFO: firmwarewrite FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: getstorageinfo" /></data> LOG: INFO: getstorageinfo FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: benchmark" /></data> LOG: INFO: benchmark FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: emmc" /></data> LOG: INFO: emmc FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: ufs" /></data> LOG: INFO: ufs FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: fixgpt" /></data> LOG: INFO: fixgpt FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: getsha256digest" /></data> LOG: INFO: getsha256digest FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: End of supported functions 15" /></data> LOG: INFO: End of supported functions 15 qdl: firehose operation timed out FIREHOSE WRITE: <?xml version="1.0"?> <data><configure MemoryName="ufs" MaxPayloadSizeToTargetInBytes="1048576" verbose="0" ZLPAwareHost="1" SkipStorageInit="0"/></data> FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: Calling handler for configure" /></data> LOG: INFO: Calling handler for configure FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: Storage type set to value UFS" /></data> LOG: INFO: Storage type set to value UFS FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <response value="ACK" MemoryName="UFS" MinVersionSupported="1" Version="1" MaxPayloadSizeToTargetInBytes="1048576" MaxPayloadSizeToTargetInBytesSupported="1048576" MaxXMLSizeInBytes="4096" DateTime="Aug 17 2021 - 23:37:37" /></data> [CONFIGURE] max payload size: 1048576 FIREHOSE WRITE: <?xml version="1.0"?> <data><program SECTOR_SIZE_IN_BYTES="4096" num_partition_sectors="32776" physical_partition_number="0" start_sector="3154440" filename="qti-ubuntu-robotics-image-qrb5165-rb5-sysfs_1.ext4"/></data> FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="INFO: Calling handler for program" /></data> LOG: INFO: Calling handler for program FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="ERROR: Failed to initialize (open whole lun) UFS Device slot 0 partition 0" /></data> LOG: ERROR: Failed to initialize (open whole lun) UFS Device slot 0 partition 0 FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="ERROR: Failed to open the device:3 slot:0 partition:0 error:0" /></data> LOG: ERROR: Failed to open the device:3 slot:0 partition:0 error:0 FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="ERROR: OPEN handle NULL and no error, weird 344489460" /></data> LOG: ERROR: OPEN handle NULL and no error, weird 344489460 FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <log value="ERROR: Failed to open device, type:UFS, slot:0, lun:0 error:3" /></data> LOG: ERROR: Failed to open device, type:UFS, slot:0, lun:0 error:3 FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?> <data> <response value="NAK" rawmode="false" /></data> [PROGRAM] failed to setup programming
Or sometimes, after this, the command would run instantly but with no console output.
We are having a lot of difficulties figuring out what went wrong. Hope you can help us.
-
RE: GPS not working
@JustinDev23 You can have GPS fix and not have GPS lock on the PX4. Have you checked the number of satellites on QGC? From my experience, GPS lock (required to switch to Position mode) is achieved with 12 satellites or more.
Maybe test the drone on a new location with more open space, that did the trick for me. -
RE: Additional camera and USB interface
@Vinny Thank you for your help!
Our configuration is C11, which has 6 sensors.
However, in the technical docs (here), it says "Sentinel - A comprehensive drone reference design with (...) support for 7 image sensor concurrency".
So, is there any other configuration with 7 image sensors? Is it supported? An additional camera pointing downwards would be very helpful for our use case. -
RE: Sentinel take off in a sloping position
@daniel We also have experienced this, even on flat surfaces. Sometimes, one propeller will spin very slowly when the drone is armed and we cannot take-off.
-
RE: Additional camera and USB interface
I still need an answer for this, before I can make a decision on what to buy. I was asked to post these questions here when I first contacted through ModalAI email.
-
RE: How to record voxl hires camera video in 4k?
@Chad-Sweet I have tried this but the
voxl-record-video
command is not available on my VOXL 2, on the Sentinel drone. Am I missing any package or is there any configuration that needs to be done prior to this command? -
Additional camera and USB interface
I've recently acquired a Sentinel drone and would like to add to the current setup a 4k camera pointing downwards and a USB sensor, for which I have a few questions:
-
Which 4k hires camera does the Sentinel have on the front and which do you recommend from the modalai store?
-
How could I connect this additional MIPI camera, considering the default Sentinel configuration?
-
Would using an MCBL-00022 cable connected to the J11 USB3 port on the 5G modem be enough to have a USB 3 port to use USB devices on the VOXL 2?
-
-
RE: GPS not working
@daniel I think that's all I did, but here is my
/etc/modalai/voxl-px4.config
, in case you want to look for any differences:#!/bin/sh # PX4 commands need the 'px4-' prefix in bash. # (px4-alias.sh is expected to be in the PATH) . px4-alias.sh # Figure out what platform we are running on. # Eventually there will be a utility called voxl-platform that will # return the platform tag or an error code. This utility is not yet # ubiquitous so it may be that it isn't available. Trying to call a # non existent program will generate an error code by the OS. If the # program exists and doesn't return an error code then use the results. PLATFORM=`/usr/bin/voxl-platform 2> /dev/null` RETURNCODE=$? if [ $RETURNCODE -ne 0 ]; then # If we couldn't get the platform from the voxl-platform utility then check # /etc/version to see if there is an M0052 substring in the version string. If so, # then we assume that we are on M0052. Otherwise assume M0054. VERSIONSTRING=$(</etc/version) M0052SUBSTRING="M0052" if [[ "$VERSIONSTRING" == *"$M0052SUBSTRING"* ]]; then PLATFORM="M0052" else PLATFORM="M0054" fi fi # We can only run on M0052 or M0054 so exit with error if that is not the case if [ $PLATFORM = "M0052" ]; then /bin/echo "Running on M0052" if [ "$RC" == "CRSF" ]; then /bin/echo "Error, crossfire not supported on M0052!" exit 0 fi elif [ $PLATFORM = "M0054" ]; then /bin/echo "Running on M0054" else /bin/echo "Error, cannot determine platform!" exit 0 fi uorb start muorb start # In order to just exit after starting the uorb / muorb modules define # the environment variable MINIMAL_PX4. (e.g. export MINIMAL_PX4=1) # This is useful for testing / debug where you may want to start drivers # and modules manually from the px4 command shell if [ ! -z $MINIMAL_PX4 ]; then /bin/echo "Running minimal script" exit 0 fi # Sleep a little here. A lot happens when the uorb and muorb start # and we need to make sure that it all completes successfully to avoid # any possible race conditions. /bin/sleep 1 # IMU (accelerometer / gyroscope) # Start this first because it gets the high rate interrupts coming in to the # DSP. Without this the DSP will oversleep and miss critical timeouts. # TODO: Why is that the case? if [ "$IMU" == "ROTATE_IMU_YAW_180" ]; then /bin/echo "Starting IMU driver with yaw 180 rotation" qshell icm42688p start -s -R 4 else qshell icm42688p start -s fi /bin/sleep 1 # Load in all of the parameters that have been saved in the file param load # Start logging and use timestamps for log files when possible. # Add the "-e" option to start logging immediately. Default is # to log only when armed logger start -t # We do not change the value of SYS_AUTOCONFIG but if it does not # show up as used then it is not reported to QGC and we get a # missing parameter error. param touch SYS_AUTOCONFIG # Start all of the device drivers on DSP # Magnetometer if [ "$GPS" == "MATEK" ]; then # Use this line for the magnetometer in the Matek Systems M8Q-5883 module /bin/echo "Starting Mateksys M8Q-5883 magnetometer" qshell qmc5883l start -R 10 -X -b 1 elif [ "$GPS" == "HERE3" ]; then # Use this line for the magnetometer in the Here3 GPS module /bin/echo "Starting Here3 ak09916 magnetometer" qshell ak09916 start -R 2 -X else # Use this line for the magnetometer in the Holybro GPS module /bin/echo "Starting Holybro magnetometer" qshell ist8310 start -R 10 -X -b 1 fi # LED driver for the Pixhawk 4 GPS module # Older units have i2c address 0x39 (57) and newer ones 0x38 (56) # M0054 only supports the newer one. M0052 can support either. if [ $PLATFORM = "M0052" ]; then qshell rgbled_ncp5623c start -X -b 1 -f 400 -a 57 fi if [ "$GPS" == "HOLYBRO" ]; then /bin/echo "Starting Holybro LED driver" qshell rgbled_ncp5623c start -X -b 1 -f 400 -a 56 elif [ "$GPS" == "HERE3" ]; then # Use this line for the Here3 GPS module LED controller /bin/echo "Starting Here3 LED" qshell rgbled start -X -f 400 fi # Barometer qshell icp10100 start -I -b 5 # ESC driver # We start this even if there is a PX4IO module. If there is # a PX4IO (M0065) module it will be plugged into the RC port # and so this driver will output commands on an empty port. qshell modalai_esc start qshell mixer load /dev/uart_esc quad_x.main.mix # APM power monitor qshell voxlpm start -X -b 2 # On M0052 the GPS and RC drivers run on the apps processor if [ $PLATFORM = "M0052" ]; then # Pixhawk 4 GPS module gps start -d /dev/ttyHS2 # RC input may be coming via either an external M0065 (aka px4io) module # or a directly attached Spektrum receiver. First see if the M0065 is detected. px4io detect PX4IO_STATUS=$? /bin/echo "PX4IO detect returned value $PX4IO_STATUS" if [ $PX4IO_STATUS -eq 0 ]; then /bin/echo "Found M0065, starting px4io" # On M0052 px4io only supports RC input, not PWM output px4io start else /bin/echo "M0065 not detected, starting Spektrum RC driver" spektrum_rc start -d /dev/ttyHS1 fi # On M0054 the GPS and RC drivers run on SLPI DSP else if [ "$GPS" == "MATEK" ]; then # Use this gps start line instead for Matek Systems M8Q-5883 module /bin/echo "Starting Mateksys M8Q-5883 GPS" qshell gps start elif [ "$GPS" == "HERE3" ]; then # Use this line for the Here3 GPS module /bin/echo "Starting Here3 GPS" qshell gps start else # Only the newer Holybro unit is supported on M0054 /bin/echo "Starting Holybro GPS" qshell gps start fi # If RC is TBS Crossfire then start its driver. # Otherwise, it could be either a directly connected Spektrum receiver # or an external M0065 (aka px4io) module. if [ "$RC" == "CRSF_MAV" ]; then /bin/echo "Starting TBS crossfire RC - MAV Mode" qshell tbs_crossfire start -m -p 7 -b 115200 elif [ "$RC" == "CRSF_RAW" ]; then /bin/echo "Starting TBS crossfire RC - CRSF Mode" qshell tbs_crossfire start -c -p 7 -b 250000 else qshell px4io detect PX4IO_STATUS=$? if [ $PX4IO_STATUS -eq 0 ]; then /bin/echo "Found M0065, starting px4io" # On M0054 we also support PWM output from M0065 (aka PX4IO) # If there are no pwm escs then that connector will be empty. qshell px4io start qshell px4io recovery qshell mixer load /dev/px4io quad_x_io.main.mix sleep 1 qshell pwm rate -c 1234 -r 400 qshell pwm disarmed -c 1234 -p 900 qshell pwm min -c 1234 -p 1060 qshell pwm max -c 1234 -p 2000 qshell pwm failsafe -c 1234 -p -1 -d /dev/px4io else /bin/echo "M0065 not detected, starting Spektrum RC driver" qshell spektrum_rc start -d 8 fi fi fi /bin/sleep 1 # Start all of the processing modules on DSP qshell sensors start qshell ekf2 start qshell mc_pos_control start qshell mc_att_control start qshell mc_rate_control start qshell mc_hover_thrust_estimator start qshell land_detector start multicopter /bin/sleep 1 # Start all of the processing modules on the applications processor rc_update start dataman start navigator start commander start commander mode manual # This is needed for altitude and position hold modes flight_mode_manager start # Start our service to update system time from GPS modalai_gps_timer start # As of 1.4.11 mavlink configuration has been changed!!! All communications are # now done via the mavlink server and voxl-vision-px4!!! param set MAV_BROADCAST 0 if [ "$RC" == "CRSF_MAV" ]; then # Slow everything way down if we are using TBS Crossfire mavlink start -a -x -u 14556 -o 14557 -r 10000 -n lo -m minimal /bin/sleep 1 else mavlink start -x -u 14556 -o 14557 -r 100000 -n lo -m onboard /bin/sleep 1 # slow down some of the fastest streams in onboard mode mavlink stream -u 14556 -s HIGHRES_IMU -r 10 mavlink stream -u 14556 -s ATTITUDE -r 10 mavlink stream -u 14556 -s ATTITUDE_QUATERNION -r 10 # speed up rc_channels mavlink stream -u 14556 -s RC_CHANNELS -r 50 /bin/sleep 1 fi if [ $PLATFORM = "M0052" ]; then # Start up the IMU server to support VIO. This is done differently on M0054 imu_server start fi mavlink boot_complete # For now we use a mavlink bridge for TBS Crossfire support if [ "$RC" == "CRSF_MAV" ]; then mavlink_bridge start fi # Optional MSP OSD driver for DJI goggles # This is only supported on M0054 (with M0125 accessory board) if [ $PLATFORM = "M0054" ]; then if [ "$OSD" == "OSD" ]; then /bin/echo "Starting OSD driver" msp_osd start -d /dev/ttyHS1 fi fi
If your config is like this and it still doesn't work, maybe @Eric-Katzfey can help you better.
-
RE: GPS not working
@Eric-Katzfey On the new location, we were able to get GPS lock after fixing 12 satellites, which allowed for take-off. During flight we reached 19 satellites at one point. Getting GPS lock with this sensor is a bit challenging, our previous location didn't have that many obstructions, but everything seems to be working.
-
RE: GPS not working
@Eric-Katzfey Hello, today I tested removing
-d 7 -b 115200
from/etc/modalai/voxl-px4.config
and it seems like the GPS service is working correctly on startup. I'm still going to test if I can get more fixed satellites and GPS lock on a new location with more open space and then get back to this post with more information. -
RE: GPS not working
@Eric-Katzfey We are stopping the GPS service manually (
qshell gps stop
) and then starting it later manually (qshell gps start
), not thevoxl-px4
.Do you want us to do the same test with commenting the gps start line in
/etc/modalai/voxl-px4.config
? -
RE: GPS not working
@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
.