There is a new module under development that allows you to pipe VGA (640x480) video from the hires camera at 30fps via MPA so that it can be streamed with voxl-streamer using RTSP while simultaneously saving 4k HD video at 30fps encoded as h265 into a file, preferably on the SD card on voxl. This module is now available in beta and will be officially released in upcoming releases of the voxl SDK for voxl, rb5-flight, and voxl 2. The beta package is available using wget https://storage.googleapis.com/modalai_public/modal_packages/archive/voxl-hires-server_0.0.1.ipk. It is meant for use on voxl only and is compatible with voxl platform release 3-3-0-0.5.0-a. In order to use it with voxl-camera-server, reconfigure voxl-camera-server to not use the hires camera. For example, call voxl-configure-cameras and choose option 1 Tracking + Stereo to allow voxl-camera-server to access the tracking and stereo cameras but not the hires camera. Then you can use voxl-hires-server for the hires camera. Use voxl-hires-server -h to see the available options. More documentation will be available upon official release of this new package.
Eric Katzfey
@Eric Katzfey
Best posts made by Eric Katzfey
-
How to stream hires camera at VGA resolution and simultaneously capture 4k30 to a fileposted in Ask your questions right here!
-
RE: Streaming 4K video from Qualcomm RB5 droneposted in Qualcomm Flight RB5 5G Drone
@kitkatSG Yes, we have enabled most resolutions in that sensor now and are preparing a release to address this issue.
-
RE: Ardupilot : connection with Mission Plannerposted in VOXL 2
@Kessie Excellent, glad to hear you got it working! And thanks for adding the details on what you had to do to the posting!
-
RE: having trouble using docker on the sdcardposted in Ask your questions right here!
@JoeC Seems like it is an SD card issue. I was able to recreate the problem when using a SanDisk Extreme 32GB card. But when using a SanDisk Ultra 16GB card everything works fine.
-
RE: Maximum I2C Clock Frequencyposted in Ask your questions right here!
@Morten-Nissov 1MHz is a supported clock rate for i2c on the DSP based on what I can see in the code. But we have never tried running a device at 1MHz on i2c so it's tough to say why it wouldn't be working for you.
-
RE: VOXL2 I2C access from FCposted in ROS
@ceu-gomez PX4 on VOXL2 is composed of two separate applications. One is on the applications processor (running Ubuntu) and the other is on the DSP (running Qurt RTOS). They use the muorb module to communicate topic data back and forth. The spare i2c on J19 is mapped to the DSP, not the applications processor, so Ubuntu has no access to it. To gain access to it on Ubuntu side with PX4 running would require some new code. This is something that is on our development roadmap but no definitive answer on when we will be able to get to it.
-
RE: Voxl 2 SDK 1.1.1posted in VOXL SDK
@JoeC SDK 1.1.1 is now available. Please use the installer in the voxl2_SDK_1.1.1.tar.gz archive to install this.
-
RE: ModalAI uORB topic file handle locationposted in VOXL 2
@Dan It's not really documented anywhere other than the source code. The best place to look is at the muorb module code. That is what implements the uorb communicator interface to allow advertisements, subscription requests, and topic data to flow between the DSP and the Linux side.
-
RE: Voxl Streamer implementation with rtmp or dash streaming protocolposted in VOXL
@Hammas-Ali We have not tried either of those streaming protocols. Voxl is a Linux computer so it is likely that you can implement RTMP or DASH. voxl-streamer uses GStreamer so, if there are RTMP or DASH GStreamer elements available, it shouldn't be too hard to incorporate them.
-
RE: voxl-streamer client repetitive connect/disconnectposted in Ask your questions right here!
An update to UVC camera support has been started. It will increase number of supported cameras by allowing MJPEG and will increase number of supported viewers including latest QGroundControl versions. Target availability is mid-December.
Latest posts made by Eric Katzfey
-
RE: I2C reading of 12S batteryposted in Support Request Format for Best Results
@Nikos-Mavr Can you reboot, try the command again, and send the entire output of PX4 so that I can see the entire startup process?
-
RE: Voxl2 + M0041 RevB Battery Monitor on Arducopterposted in Ask your questions right here!
@Dan-Jennings Rather than use voxl-inspect-battery have you tried QGC or Mission Planner or Mav Proxy?
-
RE: Voxl2 + M0041 RevB Battery Monitor on Arducopterposted in Ask your questions right here!
@Dan-Jennings Which arducopter build are you using?
-
RE: I2C reading of 12S batteryposted in Support Request Format for Best Results
@Nikos-Mavr I added the ina226 and ina228 drivers into the build. Updated build can be found here: http://voxl-packages.modalai.com/dists/qrb5165/dev/binary-arm64/voxl-px4_1.14.0-2.0.136-202603180951_arm64.deb
To try it out use the command
qshell ina226 start -X -b 4orqshell ina228 start -X -b 4from the px4 command line to see if the driver sees your device. -
RE: I2C reading of 12S batteryposted in Support Request Format for Best Results
@Nikos-Mavr Okay, great, so the I2C is working then. But address 0x41 is an INA226, not an INA228. The PX4 driver indicates that an INA228 has an address of 0x45. And the Holybro data sheet for the PM02D indicates that the lower voltage one for up to 6S battery uses the INA226 while the higher voltage one for up to 12S. Am I reading that correctly? Regardless, it doesn't matter how you set POWER_MANAGER in voxl-px4.conf because that just determines whether it will start the voxlpm driver. But, probably best to set it to EXTERNAL for now. The bigger issue is that the drivers for INA226 and INA228 are not in the image. So they need to be added to the image and then started in the voxl-px4-start startup script located in /usr/bin.
-
RE: I2C reading of 12S batteryposted in Support Request Format for Best Results
@Nikos-Mavr Once you get the signals figured out I added i2cdetect to px4 so you can scan the buses and see if your device is detected. Some rudimentary instructions are here: https://docs.modalai.com/voxl-px4-dev-build-guide/#i2c-debugging. You will need the latest voxl-px4 which is here: http://voxl-packages.modalai.com/dists/qrb5165/dev/binary-arm64/voxl-px4_1.14.0-2.0.135-202603171827_arm64.deb
-
RE: VOXL2 Time Sourcesposted in Ask your questions right here!
@shawn_ricardo A couple of quick points. First of all, PX4 just queries the Linux system time so there's no mechanism to set a separate notion of system time in PX4. If the VOXL 2 is connected to the internet then, yes, it will update the Linux system time with NTP. But VOXL 2 has no battery backed RTC so if it cannot get system time from NTP then it uses the last saved time which is typically the last time there was a connection to an NTP server. Also, in newer versions of our PX4 we get rid of the
-toption when starting the logger module so it will not use the system time. Instead it will just create session directories and log files within them in increasing numerical order. So, highest numbered log file in highest numbered session directory is the latest log. -
RE: I2C reading of 12S batteryposted in Support Request Format for Best Results
@Nikos-Mavr I'm not a hardware guy so not sure on the specifics of proper level shifting, etc. But have you made sure the unit works with some other board first like an Arduino? What is the sen228 module? Is a data sheet publicly available for that? What is the i2c address? J4 / J19 i2c ports should work with PX4 running the correct driver for that module.
-
RE: I2C reading of 12S batteryposted in Support Request Format for Best Results
@Nikos-Mavr Which pins are you using?
i2cdetectis only looking at i2c ports on the Linux (applications) processor. For PX4, the standard i2c ports are mapped to the DSP (aka SLPI) so you wouldn't see them. -
RE: Trigger Hadron camera with DO_SET_CAM_TRIGG_DISTposted in VOXL 2
@restore Are there any Mavlink messages coming out of ArduPilot that you could use to know when to take the snapshot? If so, create a new application that listens, via voxl-mavlink-server, to Mavlink and the message(s) you need. Then trigger the snapshot when it's needed. ArduPilot's external interface is Mavlink so it would be good to leverage Mavlink messages for this.