컨텐츠로 건너뛰기

개발자 리소스

BATCAM FX 시리즈와 FX Viewer 연동 개발에 필요한 공식 리소스를 모은 페이지입니다. API 레퍼런스(플레이그라운드), 공개 예제 저장소, 프로토콜 스키마, 소프트웨어 다운로드 링크를 제공합니다. 각 리소스의 최신 상태는 연결된 저장소와 문서에서 확인하세요.

API 레퍼런스 & 플레이그라운드

제품별 임베디드 REST API는 OpenAPI 명세 기반 플레이그라운드에서 엔드포인트를 탐색하고 직접 호출해 볼 수 있습니다. 두 제품 모두 장비가 API를 직접 서빙합니다.

제품API 레퍼런스인증기본 장비 IP
BATCAM FXFX API 플레이그라운드HTTP Basic192.168.0.30
BATCAM FX2FX2 API 플레이그라운드HTTP Basic 또는 Bearer(JWT)192.168.0.80
  • BATCAM FX의 일부 엔드포인트(오버레이, ROS)는 펌웨어 1.0.3 이상에서만 제공됩니다.

  • BATCAM FX2는 장비에서 라이브 스펙을 직접 확인할 수 있습니다: GET http://{device_ip}/api-docs/json

  • 실시간 오디오/빔포밍 스트리밍(WebSocket + Protobuf)은 REST 스펙에 포함되지 않습니다. 아래 예제 코드·프로토콜 정의 섹션을 참고하세요.

💡 참고: 장비 출고 시 설정된 기본 계정의 비밀번호는 최초 접속 시 반드시 변경 후 사용하세요.

제품 × 인터페이스 문서 라우팅

연동하려는 인터페이스에 따라 아래 표에서 해당 문서로 이동하세요.

인터페이스BATCAM FXBATCAM FX2FX Viewer
REST API플레이그라운드플레이그라운드
실시간 스트림 (WebSocket + Protobuf, RTSP)데이터 흐름 개요Python Protobuf 예제
ROS 2ROS Integration
ONVIFONVIF
Modbus TCPModbus 연동
디바이스 관리 웹 UI디바이스 매니저
FX CloudFX Cloud 로그인
소프트웨어 업데이트웹 소프트웨어 업데이트소프트웨어 업데이트download.smins.kr
펌웨어 릴리스 노트릴리스 노트릴리스 노트

예제 코드

예제대상 제품언어다루는 내용
fx-api-example-csharp (GitHub)BATCAM FXC#WebSocket 스트림 수신 → Protobuf 디코딩 → RTSP 영상과 오버레이 합성. GUI 예제 포함
batcam-fx-python-protobuf-example (GitHub)BATCAM FX · FX2PythonREST 상태 조회, WebSocket Subscribe, Protobuf 메시지(Beamforming / Audio / LPoint / Prpd) 파싱
  • Python 예제의 단계별 설명(환경 설정, 바인딩 생성, 메시지 타입별 수신, FX2 변경사항)은 FX2 개발자 문서의 Python Protobuf 예제 페이지에서 제공합니다.

  • WebSocket 연결 시 SubProtocol을 Subscribe로 지정해야 하며, 연결 후 Subscribe 객체로 구독 요청을 보내야 데이터 수신이 시작됩니다.

  • WebSocket 연결에도 RTSP와 마찬가지로 사용자 인증이 필요합니다. 라이브러리가 인증을 지원하지 않는 경우 Authorization 헤더에 {username}:{password}를 base64로 인코딩해 포함해야 합니다. 자세한 내용은 BATCAM FX 개발문서 개요를 참고하세요.

프로토콜 정의

예제 저장소는 GitHub(SM-Instruments-Inc)에, 프로토콜 정의 저장소는 OSS GitLab(smins-oss)에 공개되어 있습니다.

저장소내용
fx-stream-protocol (GitLab)FX 스트림 데이터의 인코딩/디코딩에 사용하는 Protobuf 스키마와 사전 생성 파일. canonical 스키마는 fx-protocol-2.proto이며, 각 언어별 바인딩 생성의 기준이 됩니다.
fx-stream-msgs (GitLab)BATCAM FX가 데이터 송신에 사용하는 ROS 2 인터페이스(메시지) 타입 정의. 상세 명세는 ROS Integration 문서를 참고하세요.

스키마에서 Python 바인딩을 생성하는 예시입니다.

Terminal window
# protoc 설치 (macOS / Homebrew)
brew install protobuf
# Python 바인딩 생성
protoc --python_out=. fx-protocol-2.proto

소프트웨어 다운로드

FX Viewer 등 공식 배포 소프트웨어는 다운로드 허브 download.smins.kr에서 내려받을 수 있습니다. 장비 펌웨어의 변경 이력은 제품별 릴리스 노트(BATCAM FX, BATCAM FX2)에서 확인하세요.

관련 문서