How do I verify that I'm running latest-n-greatest?



  • How can I determine if I am running the same code that is built under voxl-build? I've walked through the steps outlined on that page and things build successfully. I could just try to install that I guess, but it would be nice to know if what I'm running is the same thing.
    The output of voxl-version...

    ~ # voxl-version
    cat: /etc/modalai/voxl-software-bundle-version.txt: No such file or directory
    --------------------------------------------------------------------------------
    system-image:    ModalAI 3.3.0 BUILDER: ekatzfey BUILD_TIME: 2021-06-06_19:28
    kernel:          #1 SMP PREEMPT Sun Jun 6 19:41:01 UTC 2021 3.18.71-perf
    factory-bundle:  1.0.1 (Yocto installation)
    --------------------------------------------------------------------------------
    architecture:    aarch64
    processor:       apq8096
    os:              GNU/Linux
    --------------------------------------------------------------------------------
    voxl-suite:
    Package: voxl-suite
    Version: 0.5.0
    Depends: libjpeg_turbo (>= 9.0.4), libmodal_exposure (>= 0.0.2), libmodal_json (>= 0.3.6), libmodal_pipe (>= 2.1.1), lib
    2), libvoxl_io (>= 0.5.4), mavlink-camera-manager (>= 0.0.2), mongoose (>= 7.3.0), opencv (>= 4.5.2-2), openmp (>= 10.0.
    l-camera-server (>= 0.8.1), voxl-cpu-monitor (>= 0.2.0), voxl-dfs-server (>= 0.2.2), voxl-docker-support (>= 1.1.3), vox
    .9.1), voxl-mavlink (>= 0.0.2), voxl-modem (>= 0.12.0), voxl-mpa-tools (>= 0.3.6), voxl-nodes (>= 0.2.0), voxl-portal (>
    -streamer (>= 0.2.6), voxl-tag-detector (>= 0.0.2), voxl-tflite (>= 2.2.3), voxl-tflite-server (>= 0.1.5), voxl-utils (>
    vpn (>= 0.0.3)
    Status: install user installed
    Section: base
    Architecture: all
    Maintainer: james@modalai.com
    MD5Sum: 172dd2541a4b01ec415651b5ded3afab
    Size: 1956
    Filename: voxl-suite_0.5.0_202111041852.ipk
    Description: meta-package for voxl-suite software collection
    Installed-Time: 144
    
    --------------------------------------------------------------------------------
    ~ #
    

    shows a build time of more than 15 months ago, so I'm guessing I should just follow the instructions outlined in Flashing the Kernel, true?


  • Dev Team

    @Ed-Sutter I would recommend just updating to the latest platform release: https://docs.modalai.com/platform-releases/



  • @tom Ok, I did that; but is there any way to know what source code is in that build? For example, I need to verify that qmi_wwan.c has my modem's VID/PID.


  • Dev Team

    @Ed-Sutter I don't have a direct answer for you, @Eric-Katzfey would know more than me but he is out of office for a bit. Are you seeing any performance difference using the new platform release. That release is only a few months old so should contain any Sierra related changes we've made.

    If you do an lsusb -t are the correct drivers picking up the modem? If so it sounds like the VID/PID are being recognized.


  • Dev Team

    @Ed-Sutter You said in another thread that you saw the patch that adds the PID/VID, can you point me toward that patch?



  • @tom I don't see any difference with the latest build. My problem is the same thing I've been posting about in other threads here and here. The power and dns problems are resolved, but still when I run the modem for a while it just stops communicating, and the only way I've been able to restore the interface is with a reboot.

    At one point Eric had mentioned the VID/PID thing, and looking at the file that he pointed me to in git, it did not have the VID/PID info for my modem (EM7565). So, I tried rebuilding voxl-build, but I replaced the qmi_wwan.c file with the one I used on Ubuntu from Sierra Wireless. Anyway, the build failed because somewhere in the bowls of bitbake a patch is made on the qmi_wwan.c file, but since I replaced it, the patch got confused and the build failed. That's the only reason I know that some patch is installed on that file.

    Make sense?


  • Dev Team

    @Ed-Sutter I see what you're saying. In order to add the VID/PID then we would have to patch qmi_wwan which we've done for other modems and integrate it into https://gitlab.com/voxl-public/system-image-build/meta-voxl.

    If you look through meta-voxl you'll see some other modem related patches we've done in the past, e.g.: https://gitlab.com/voxl-public/system-image-build/meta-voxl/-/blob/master/recipes-kernel/linux-quic/files/qmi_wwan2.patch

    What I would do is run through voxl-build without making any changes. Once it gets past the patching step you should now be able to see the post-patched qmi_wwan.c file and can create another patch based off of that file to then add to meta-voxl.



  • @tom I was able to look at the post-patched qmi_wwan.c file and it does have the VID/PID in there. I just don't know for sure if that patch is in the platform build that I just installed (actually, I'm hoping its not because the latest build doesn't fix my problem).
    This is what is running on my machine now...

    / # voxl-version
    --------------------------------------------------------------------------------
    system-image: 3.8.0
    kernel:       #1 SMP PREEMPT Tue Apr 26 18:08:39 UTC 2022 3.18.71-perf
    --------------------------------------------------------------------------------
    hw version:   VOXL
    --------------------------------------------------------------------------------
    voxl-suite:   0.7.0
    --------------------------------------------------------------------------------
    

    If that patch is not part of this package (which appears to be 6 months old), then I'd like to know how I can pull that patch in.
    If on the other hand, its already in this package, then I don't have a clue what to do about my modem issue.


  • Dev Team

    @Ed-Sutter Okay cool, well in that case I would recommend building the kernel using voxl-build, flashing the kernel, and seeing if there is a difference in performance.



  • @tom Ok I did that but now I'm scared...
    I had built the kernel yesterday, so I ran through the steps in "Testing the Kernel Before Flashing" and everything checked out (the timestamp changed).
    I then followed the steps in "Flashing the Kernel", got this output:

    $: fastboot flash boot /opt/data/workspace/poky/build/tmp-glibc/deploy/images/apq8096-drone/apq8096-boot.
    img
    target reported max download size of 536870912 bytes
    sending 'boot' (56096 KB)...
    OKAY [  1.551s]
    writing 'boot'...
    OKAY [  0.429s]
    finished. total time: 1.980s
    

    but then typed adb devices and got this output:

    $: adb devices
    List of devices attached
    
    $:
    

    I have not reset or power-cycled anything yet. Should I do that?


  • Dev Team

    @Ed-Sutter Yeah you have to reboot or run fastboot reboot, it's still in fastboot mode. For example it'll probably show up with fastboot devices



  • @tom PHEW! Ok, good... It did reboot with the recent kernel image. Now I have to run my tests to see if that helped my modem issue.
    Thanks much for the help, I'll post back here to let you know if it fixed my problem.


  • Dev Team

    @Ed-Sutter Great! I updated the README to make that step more clear.



  • @tom Well, bummer... It didn't help. My test already locked up.


  • Dev Team

    @Ed-Sutter Hmm not too sure where to go from here other than contact Sierra for ideas.

    In the past we've used scripts that run in the background that monitor a network connection and re-enables the connection if it drops off, that might be the route to go.

    It would be a modified version of something like this: https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-modem/-/blob/master/scripts/modallink_relink.py



  • @tom Thanks!



  • @tom I just noticed something... When sierra.py runs, the very last thing it does is write 'Y' into /sys/class/net/wwan0/qmi/raw_ip. That write is successful, but then a few seconds later, I can cat that file and see 'N'.
    What is running after sierra.py that would do that?


  • Dev Team

    @Ed-Sutter I'm not sure, I think you'd have to dig through the qmi_wwan driver



  • Apologies for highjacking the thread and being a noob, but @Ed-Sutter are you able to build a system image from https://gitlab.com/voxl-public/system-image-build/meta-voxl ?

    Or is this the kernel only that you then install ontop of an existing system image?


  • Dev Team

    @Steve-Turner voxl-build allows you to build the kernel only which you can then flash on top of an existing system. Qualcomm licenses are required in order to build a full system image.


Log in to reply