Setting up a Camera
The Slamcore SDK supports the following cameras:
Intel RealSense D435i
Intel RealSense D455
Luxonis OAK-D S2 FF
Follow the steps below to set up one of the supported cameras:
Setting up an Intel® RealSense™ Camera
Note
Slamcore software packages link statically to the Intel RealSense SDK 2.0,
librealsense2
, meaning the necessary libraries are included in our packages
and no separate installation of librealsense2
is necessary to run our
tools.
However, to use the D435i or D455 depth camera, most systems will require
building and activating kernel modules or setting up udev rules to complete
the setup of the librealsense2
features required by Slamcore software.
To complete this essential step, follow the steps below.
Warning
The D435i and D455 depth cameras require a USB 3.0 connection - make sure you are using a USB 3.0 rated cable and port on your compute board.
To start using our software with live camera data you will need to do the following:
Install Slamcore DKMS Package
Slamcore offers a DKMS Debian package, available from slamcore-dkms, which
will patch the required camera kernel modules and set up the required udev
rules to ensure the system can communicate with the camera correctly. This is
the recommended approach by Slamcore to patch the kernel and replaces the need
to patch the kernel with Intel’s librealsense2-dkms
package or by building
the kernel patches from source.
Note
You may skip this step if you have already patched the kernel with an
existing installation of librealsense2-dkms
(you can check this with
dpkg -l | grep realsense
) or have built librealsense2
from source.
The Slamcore DKMS package supports the following Linux kernel versions, as listed on slamcore-dkms:
Platform |
Supported Operating System |
Supported Kernel Versions |
---|---|---|
x86_64 |
Ubuntu 20.04 |
5.13, 5.14, 5.15 |
x86_64 |
Ubuntu 22.04 |
5.15, 5.19 |
NVIDIA JetPack 4 |
JetPack 4.4.1 - 4.6.1 (L4T 32.4.4 - 32.7.1) |
4.9 |
NVIDIA JetPack 5 |
JetPack 5.0.2 - 5.1.1 (L4T 35.1 - 35.3.1) |
5.10 |
Check your machine’s kernel version by running the following in a terminal window:
$ uname -r
If using a supported kernel, download and install the slamcore-dkms
Debian
package by following the instructions on the slamcore-dkms GitHub README.
Ensure that your Intel RealSense camera is unplugged when installing the package
and reboot your system when the patch is completed.
Warning
If you are installing the DKMS package on a machine with Secure Boot enabled you may need to set an MOK key during the installation process. You will then be prompted to re-enter this key on reboot to properly install the kernel modules. Please ensure you do not skip this step as it is essential to ensure the Slamcore SDK can communicate with the camera correctly. Further details are available in the slamcore-dkms GitHub README Troubleshooting section.
After reboot, you can verify the patch has been applied properly by running:
$ dkms status
The slamcore-dkms
package status should display installed
. If the output
only displays built
, make sure you have rebooted your computer.
Note
For kernel versions not supported by the Slamcore DKMS package, you may be
able to use the librealsense2-dkms
package or you will need to build and install the
librealsense2
module package from source.
Check the Camera Serial Number and Firmware
Once you have setup the DKMS package correctly, you will need to register your camera on the Slamcore Portal using its serial number. To fetch this information, you can simply run one of our tools with the camera connected to your computer.
$ slamcore_visualiser
When using an unregistered camera, the tool will not run and prompt you to register your camera on the Slamcore Portal.
Auto-detecting your camera...
Using camera: Intel RealSense D435I, with serial number: 123456789000
Could not retrieve camera configuration, please ensure that the camera is registered at https://portal.slamcore.com.
Copy or note down the camera model and serial number.
Note
If using an unsupported firmware version, our software will throw an error such as the following:
Auto-detecting your camera...
RealSense camera firmware 5.14.0.0 not supported. Please install one of the supported
firmware versions: { 5.12.3.0, 5.12.6.0, 5.12.7.100, 5.12.8.200, 5.12.11.0, 5.12.12.100,
5.12.13.50, 5.12.14.50, 5.12.15.50 }
Error: Failed to query camera serial number: Operation not supported (generic:95)
To install a compatible firmware (5.12.3.0 - 5.12.15.50) on the camera using the RealSense SDK tools, follow the steps outlined in our Troubleshooting page - Unsupported D435i/D455 camera firmware section.
Note
An error such as Per-frame metadata is not enabled at the OS level
or
Error failed to open scan_element
means the kernel module patches or udev
rules are not correctly installed or activated. If this happens, check that
the patches were installed correctly according to the instructions for your
kernel version.
If the message persists, contact Slamcore support at support@slamcore.com providing the following details:
The machine you are using,
Your system’s kernel version,
The camera firmware version,
The slamcore-dkms package version or alternative used
Register Your Camera
Finally, register your camera to start using it with the Slamcore software. You will need the serial number which can be found by running one of our tools as explained above or printed on the camera or its box.
Login to your Slamcore account at the Slamcore Portal.
Click on the
Manage Cameras
option.Click on the
Activate New Camera
link.Select your camera type (RealSense D435i, RealSense D455, OAK-D S2 Fixed-Focus).
Enter your camera serial number.
Enter an optional tag.
Click
Add Camera
.
RealSense Camera Calibration (Optional)
While the RealSense cameras can work out-of-the-box without a custom camera calibration, we recommend performing the RealSense Camera Calibration to see potential improvements in accuracy and robustness of SLAM, especially before you do a thorough accuracy evaluation of our system.
When a camera calibration has been applied, a using custom calibration
label
will be shown next to the camera entry on the portal and when using our tools.
Set up an OAK-D S2 Camera
Note
Our support for the Luxonis OAK-D S2 is experimental and only on demand. Please contact us directly at support@slamcore.com if you would like to use the camera.
We currently only support the camera in Fixed-Focus mode and only the stereo pair. We do not support its color or depth streams.
To start using our software with live camera data from the OAK-D cameras you will need to do the following:
Set Udev Rules on your Machine
When first attempting to access the OAK-D camera, you may get permission issues from Luxonis’ DepthAI:
Insufficient permissions to communicate with X_LINK_UNBOOTED device with name
"1.1". Make sure udev rules are set
Resolve this by setting the udev rules according to Luxonis’ DepthAI documentation, then unplug the camera and plug it back into USB afterwards:
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="03e7", MODE="0666"' | sudo tee /etc/udev/rules.d/80-movidius.rules
sudo udevadm control --reload-rules && sudo udevadm trigger
Register the Camera
As the OAK-D S2 Fixed-Focus camera is currently supported only on demand, you must contact us at support@slamcore.com to register the camera. Please email us with the following details:
Slamcore account email address
Your OAK-D camera serial number (typically 18-digit long)
OAK-D Camera Calibration
We will reply to your email with the next steps to calibrate your camera before using it with our SLAM.