반응형
- ODROID XU4 / M1S 같은 보드들은 V4L2 드라이버 지원이 불완전할 수 있음
- RealSense 기본 설정은 V4L2 기반이므로, USB 백엔드(RSUSB)를 강제로 활성화해야 인식 가능
- USB 백엔드 활성화(-DFORCE_RSUSB_BACKEND=true)하면 카메라를 직접 USB 장치로 연결하여 사용 가능
cd ~
git clone https://github.com/IntelRealSense/librealsense.git
cd librealsense
mkdir build && cd build
cmake .. -DBUILD_EXAMPLES=true -DFORCE_RSUSB_BACKEND=true
make -j$(nproc)
sudo make install
DFORCE_RSUSB_BACKEND = true 해야지 odroid m1s 에서 python3 카메라 인식이 가능하다.
1. 기존에 Realsense 지운다
sudo apt remove -y librealsense2-utils librealsense2-dev librealsense2-dkms
sudo rm -rf ~/Projects/realsense/librealsense
2. USB 백엔드 강제 활성
cd ~
git clone https://github.com/IntelRealSense/librealsense.git
cd librealsense
mkdir build && cd build
cmake .. -DBUILD_EXAMPLES=true -DFORCE_RSUSB_BACKEND=true
make -j$(nproc)
sudo make install
3. udev 규칙 적용 (USB 장치 접근 권한 설정)
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger
4. Realsense 서비스 재시작
sudo modprobe uvcvideo
sudo systemctl restart udev
5. 카메라 확인
rs-enumerate-devices
왜 USB 백엔드를 강제 적용해야 할까?
- ODROID 보드에서 /dev/video* 장치가 생성되지 않음
- ls -lah /dev/video* 실행 결과 "No such file or directory"
- 즉, V4L2(Video for Linux) 인터페이스로 장치가 인식되지 않음
- 이는 커널 모듈이 올바르게 로드되지 않았거나, ODROID M1S의 V4L2 지원이 제한적이기 때문일 가능성이 큼
- lsusb -t 결과에서 RealSense가 "Driver=" 로 표시됨
- /dev/video* 장치가 없는 것과 마찬가지로, USB 트리에서도 해당 장치가 드라이버 없이 연결된 상태
- 일반적으로 UVC (USB Video Class) 장치라면 Driver=uvcvideo가 보여야 함
- 드라이버가 정상적으로 로드되지 않았기 때문에 rs-enumerate-devices로는 확인되지만, Python 코드에서는 연결되지 않는 문제 발생 가능성 큼
- RealSense Viewer (realsense-viewer)에서는 정상 작동
- 이건 Librealsense의 자체 USB 백엔드(RSUSB)를 사용하고 있기 때문일 가능성이 높음
- 하지만 기본적으로 Python API는 V4L2를 통해 접근을 시도함 → 장치가 인식되지 않음
✅ 강제 적용해야 하는 이유
🔹 V4L2 방식 (기본 설정) → 현재 환경에서 작동하지 않음
🔹 RSUSB 백엔드 방식 (강제 적용) → Realsense Viewer에서 정상 작동 가능성 높음
🔹 ODROID M1S 및 기타 보드에서 자주 발생하는 문제임 (커널 드라이버 지원 부족 가능성)
이러한 이유로 USB 백엔드를 강제 적용해서 RealSense 장치를 직접 인식하도록 설정하는 것이 필요합니다.
📌 결론
✔ -DFORCE_RSUSB_BACKEND=true 옵션을 사용해 USB 백엔드를 강제로 활성화하는 것이 현재 문제를 해결할 가능성이 매우 높습니다.
✔ 이 옵션을 적용한 후 rs-enumerate-devices와 Python 코드를 다시 실행해서 인식 여부를 확인하는 것이 최선입니다.
반응형
'SBC (Single Board Computer) > Odroid M1S' 카테고리의 다른 글
ODROID M1S, Realsense Libarary 설치 (0) | 2025.02.24 |
---|---|
ODROID M1S, KERNEL (커널) 컴파일 = 작성중 = (0) | 2024.04.15 |
ODROID M1S, 소개 및 자료 ( 출처 : 하드커널 ) (0) | 2024.04.15 |