Getting voxl-streamer running
Hello, I'm working to get voxl-camera-server and voxl-streamer going to get the cameras oriented right-side up, and then view them on a host ground station laptop.
I went and loaded the beta 3.1.0 image that was sent, that all went well. Then, using the emulator, build and loaded libmodal_json, voxl-camera-server, and voxl-streamer. I also went through the voxl-configure-cameras and voxl-configure-modem scripts for setup.
See screenshots for camera-server and streamer, it looks like camera-server starts properly, however streamer throws an error message. Any ideas on what this could be? Thanks.
If you try to build from scratch on the master branch you will have a version skew and see these errors. You need to be using the dev branch if you are building from source. I would recommend, however, before doing that, to try using our prebuilt binaries from our package repo to make sure everything is working properly. First, reflash system image 3.1.0 on to the board. Then, on target, follow these steps:
- Setup Internet access (e.g. WiFi), then reboot
- Verify Internet connectivity
- Edit /etc/opkg/opkg.conf to uncomment the last line. This will give you access to our dev package repo at http://voxl-packages.modalai.com/dev/
- opkg update
- opkg install voxl-camera-server
- opkg install voxl-streamer
@Eric-Katzfey, thanks. I followed the steps, and voxl-camera-server won't run now. See attached image. When I loaded 3.1.0, I chose to wipe the /data/ partition. When finished loading, I allowed it to do the auto download and install of packages. Then, I did voxl-configure-cameras, voxl-configure-modem, and voxl-configure-docker-support. Not sure if there is anything else needed.
Okay, so don't do the auto download and install of packages after flashing system image 3.1.0. And don't run any of the voxl-configure-* scripts. See if you can just flash system image 3.1.0 without any other packages and then run the steps.
@Eric-Katzfey Ok, that worked. Fresh image with just camera server and streamer. Was able to stream hi res over voxl wifi connection to VLC on a laptop. I'm going to try enabling things one step at a time and see how far I get.
Thanks for the help Eric. Currently I have pretty much the bare bones stuff installed, see screenshot below. camera-server and streamer up and running, and getting video on a host computer via VLC or QGC. I think we can consider this one solved!
For completeness here, you can start with a clean image, then:
Update /etc/opkg/opkg.conf by un-commenting the last line for include development packages: src/gz dev http://voxl-packages.modalai.com/dev
Ensure you're connected to the internet via voxl-wifi station mode.
opkg install voxl-suite-dev
Our dev repo is very active and occasionally we end up with some dependency mismatches in it. I fixed the problem with voxl-streamer. Can you please start with a fresh install of the system image and follow the instructions in this thread to try again? It should all be working now. Thanks!
@Eric-Katzfey Hi Eric,
Thanks for the reply!
I actually found the issue. the camera server was broadcasting under
/run/mpa/hires_previewwhen vox-streamer was looking for
run/mpa/hires/previewso I just changed that value in the script and it works
@Lynn-Koudsi Great! Yep, that was the issue
I am having the same issue as you Lynn where I am getting the error:
yocto:/# voxl-streamer Using configuration file /etc/modalai/voxl-streamer.conf closing FDs for client channel 0 ERROR: Couldn't open MPA pipe /run/mpa/hires/preview/
Where is the script where you changed
@Dean-Fortier It is in the voxl-streamer configuration file. /etc/modalai/voxl-streamer.conf.
Thanks for the tip, I installed the 3.2.0-0.3.4-b release and still have the same issue. Also I am not sure what to modify in the
voxl-streamer.conffile. I modified line 6 from:
"mpa-camera": "hires_preview" },
"mpa-camera": "hires/preview" },
but I think I am missing something as I am getting the same error message.
@Dean-Fortier The issue with the path was that, originally, it was specified as "hires/preview". This is where voxl-camera-server created the pipe and where voxl-streamer looked for it. In a newer version of voxl-camera-server, the name changed to "hires_preview". Until voxl-streamer was updated, you had to manually go into the configuration file and change it yourself. Now voxl-streamer has been updated and the manual change is no longer necessary. That is what is in 3.2.0-0.3.4-b. You can take a look at the directories yourself to see what voxl-camera-server is doing. After a power cycle and before you start voxl-camera-server you should see something like this:
yocto:/run/mpa# ls imu0 imu1
And then after starting voxl-camera-server you will see the new directories:
yocto:/run/mpa# ls hires_preview imu0 imu1 stereo tracking
If you don't see those directories then the problem is somewhere else.
@Eric-Katzfey Thanks for the explanation, I was not starting the
When I started the
voxl-camera-server, I had my camera configuration include the tracking camera which stopped the
voxl-camera-serverfrom starting correctly.
Once I changed my camera configuration with
voxl-configure-camerasto "hires only" I was able to start the camera server and then start the
This post is deleted!