voxl streamer failing to create tflite pipe with latest version of code from master

  • I pulled the latest version of the stable code from the voxl-tflite-server master branch on github and built it directly in voxl-cross. It appeared to build just fine. However, when trying to run voxl-streamer with the tflite overlay it appears that the tflite pipe is not being created.

    When running

    voxl-streamer -c tflite-overlay

    the output simply hangs and doesn't display the usual message of:

    Stream available at rtsp://

    Any input on why this might be happening? Here is the output of building the ipk file:

    voxl-cross:~/voxl-tflite-server$ ./clean.sh 
    voxl-cross:~/voxl-tflite-server$ ./install_build_deps.sh stable
    using stable repository
    Downloading http://voxl-packages.modalai.com/stable/Packages.gz.
    Updated source 'stable'.
    Installing libmodal_pipe (2.0.10) on root.
    Downloading http://voxl-packages.modalai.com/stable/libmodal_pipe_2.0.10.ipk.
    Configuring libmodal_pipe.
    Done installing libmodal_pipe
    Installing libmodal_json (0.3.5) on root.
    Downloading http://voxl-packages.modalai.com/stable/libmodal_json_0.3.5.ipk.
    Configuring libmodal_json.
    Done installing libmodal_json
    Installing opencv (4.5.2) on root.
    Downloading http://voxl-packages.modalai.com/stable/opencv_4.5.2-2.ipk.
    Configuring opencv.
    done installing opencv
    Installing voxl-tflite (0.0.1) on root.
    Downloading http://voxl-packages.modalai.com/stable/voxl-tflite_0.0.1.ipk.
    Configuring voxl-tflite.
    voxl-cross:~/voxl-tflite-server$ ./build.sh 
    + set -e
    + mkdir -p build
    + cd build
    + cmake -DCMAKE_TOOLCHAIN_FILE=/opt/cross_toolchain/aarch64-gnu-4.9.toolchain.cmake -DCMAKE_BUILD_TYPE=RELEASE -DENABLE_NEON=ON '-DCMAKE_CXX_FLAGS= -std=c++11 -march=armv8-a' ../server
    -- The C compiler identification is GNU 4.9.3
    -- The CXX compiler identification is GNU 4.9.3
    -- Check for working C compiler: /usr/bin/aarch64-linux-gnu-gcc-4.9
    -- Check for working C compiler: /usr/bin/aarch64-linux-gnu-gcc-4.9 -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Check for working CXX compiler: /usr/bin/aarch64-linux-gnu-g++-4.9
    -- Check for working CXX compiler: /usr/bin/aarch64-linux-gnu-g++-4.9 -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Configuring done
    -- Generating done
    CMake Warning:
      Manually-specified variables were not used by the project:
    -- Build files have been written to: /home/root/voxl-tflite-server/build
    + make -j 4 TARGET=aarch64 TARGET_TOOLCHAIN_PREFIX=aarch64-linux-gnu-
    Scanning dependencies of target voxl-tflite-server
    [ 40%] Building CXX object CMakeFiles/voxl-tflite-server.dir/main.cpp.o
    [ 40%] Building C object CMakeFiles/voxl-tflite-server.dir/undistort.c.o
    [ 60%] Building CXX object CMakeFiles/voxl-tflite-server.dir/models.cpp.o
    [ 80%] Building CXX object CMakeFiles/voxl-tflite-server.dir/threads.cpp.o
    In file included from /usr/include/modal_pipe_client.h:42:0,
                     from /usr/include/modal_pipe.h:41,
                     from /home/root/voxl-tflite-server/server/threads.h:40,
                     from /home/root/voxl-tflite-server/server/models.cpp:46:
    /usr/include/modal_pipe_common.h:63:2: warning: #warning Building for Android [-Wcpp]
     #warning Building for Android
    [100%] Linking CXX executable voxl-tflite-server
    [100%] Built target voxl-tflite-server
    voxl-cross:~/voxl-tflite-server$ ./make_package.sh 
    Package Name:  voxl-tflite-server
    version Number:  0.1.1
    [100%] Built target voxl-tflite-server
    Install the project...
    -- Install configuration: "RELEASE"
    -- Installing: ../ipk/data/usr/bin/voxl-tflite-server
    ar: creating voxl-tflite-server_0.1.1.ipk

  • This was all working up until the time libmodal_pipe was updated which seems to be sept 2. How would I use an older version of libmodal_pipe?

  • Also, here are the available mpa pipes after installing the server.


  • Dev Team

    Hi @colerose,
    Are you running the voxl-tflite-server before you try to view the output with voxl-streamer? The pipe is missing from your run/mpa screenshot, so it doesn't look like the server has been started. It can be started manually or setup as a service using voxl-configure-tflite on target.

  • @Matt-Turi yes, I have tried both running it as a service and setting the server up manually. The tflite server will work on its own which is clear based on the output that it prints in debug mode. However, it simply does not stream in voxl-streamer with the tflite-overlay even though the server voxl-tflite-server is running fine when I try to use the streamer.

  • To be more concrete, my team and I have tried to build the dev version from master, the stable version from master, as well as many other previous versions that we were able to get working before Sept 2 (on multiple drones). The builds all prior worked fine with all of these versions (on multiple drones). After then, we haven't been able to get a single version that will create the tflite pipe to allow voxl-streamer to use the tflite overlay (on any drone). However, all of them show that the tflite server is working fine in debug mode on its own.

  • Dev Team

    Looks like this was a bug with some of the tensorflow headers affecting new changes in libmodal pipe. Thanks for pointing this out, v0.1.3 will fix this issue and will be live shortly.

  • Thanks @Matt-Turi! Can you please reply to this thread to let me know when it’s up?

  • Dev Team

    It's up for both dev/stable branches

  • @Matt-Turi Great thanks! I'll give it a shot now!

Log in to reply