ORB SLAM 3
Last updated: 1 day ago • 21 versions | Visibility: Public
Context
This article describes how to use the Lynx ORB Slam implementation for DSP on Qualcomm chipset.
This version uses QC CVP for optimization and stability and requires to have a rooted device.
Prerequisites
- Android Studio Narwhal 2025.1.2
- Qualcomm Hexagon SDK 5.5.5.0
- Define an HEXAGON_SDK_ROOT environment variable pointing to Qualcomm Hexagon SDK path
- Rooted device (cf. https://lynx.miraheze.org/wiki/Rooting_Process )
Important: rooting the device is not a procedure made by Lynx and take no responsabilities to the damage caused to the device.
Project setup
Clone the project and submodules.
git clone && cd LynxOrbSlam3 && git submodule update --init --recursive
Use
1. Install the app with -g option
adb install -g .apk
2. Sign the device for dsp access
Windows:
%HEXAGON_SDK_ROOT%/setup_sdk_env.cmd && python3 %HEXAGON_SDK_ROOT%/utils/scripts/signer.py
Linux:
$HEXAGON_SDK_ROOT/setup_sdk_env.cmd && python3 $HEXAGON_SDK_ROOT/utils/scripts/signer.py
3. Give permission to cvp folder
adb wait-for-device root && adb wait-for-device remount && adb wait-for-device chmod 666 /dev/cvp
4. Disable SELinux policies for DSP and CVP use
adb wait-for-device root && adb wait-for-device shell setenforce 0
5. Start the application from the Lynx Launcher
6. (Important) Remove testsig from /vendor/lib/rfsa/adsp/ to avoid reboot issue
adb shell rm -f /vendor/lib/rfsa/adsp/testsig*
Limitations
- Windows support only for now
- CVP optimization requires to have rooted device
Internal note: depending on Magisk scripts we are working, remove steps 3, 4 and 6. And use step 2 only once after project build or remove this step if automated in Android Studio build process.
in “Project Setup” section should be replaced with the final github repo.
“Project Setup” add eventual magisk module or requirements.