Linux 용 VR920 headtracking 드라이버
나는에 약속대로 VR920 Headtracking 드라이버 개발 여기에 리눅스 Vuzix VR920의 iwear 위해 내 headtracking 드라이버의 사용 가능한 버전이 제공됩니다. 다시 나는 Vuzix 포럼의 MalMal 마셨네, 누구의 코드는 제가 USB를 통해 장치의 센서 데이터를 읽는 방법을 배울 수있었습니다에서. : 참조 리눅스 장치를 사용하는 방법에 대한 일반적인 정보 Vuzix VR920를 리눅스와 적극적인 3D 스테레오와 함께 .
나는 가속도계 및 자력 데이터 (장치가 각각 세 가지를 가지고)에서 편주, 피치와 롤을 계산할 수 있었다. 이것은 3DOF 추적 가능하게하고 3D 장면에서 주위를 볼 수있게합니다.
드라이버로 네트워크를 통해 추적 데이터를 전송 UDP 멀티 캐스트 , 따라서 여러 클라이언트가 하나가 계산을 렌더링하여 다른 기계에 대해 하나의 기계를 사용할 수 예 parallelization 더 가능하게 데이터를 읽고 있습니다. 이 외에도 네트워크를 통해 밖으로 데이터를 보낼 수있는 방법은 드라이버를 개발에 사용되는 언어로 응용 프로그램 독립을 작성에 사용된 언어를 만듭니다.
사용법 :
./vr920-H vr920 [-H] [-?] [-m 멀티 캐스트 IP] [-P 멀티 캐스트 포트] [-C calibrationfile]
명령행에서는 멀티 캐스트 주소로 데이터를 보낼 포트를 지정할 수 있습니다. 당신은 이러한 값을 정의하지 않는다면 드라이버가 제정신 기본 (224.0.0.42:4242)에 추적 데이터를 보내드립니다. 어떤 경우라도, 추적 데이터를 사용하여 클라이언트가 동일한 포트와 같은 주소에 가입해야한다. 당신만이 같은 기계에서 데이터를 사용하고 싶다면 당신은 실제 네트워크를 사용하지 않기로 결정할 수도 있습니다. 이런 경우에는 루프백 네트워킹을 사용할 수 있습니다.
루프백 인터페이스에 멀티 캐스트 주소에 대한 경로를 추가 : 경로 추가 기능 호스트 224.0.0.42 싸다
경로 델 - 호스트 224.0.0.42 싸다 : 경로를 삭제합니다
드라이버를 실행하면 그것은 즉시 trackingdata를 보낼 시작합니다. 처음에는 그것은 "자동"모드로 시작됩니다. 당신은 M 키를 눌러 모니터 모드를 활성화 / 비활성화할 수 있습니다. 모니터 모드에서 드라이버 편주, 피치와 롤에 대한 각도를 표시합니다. C 키를 누르면 당신은 활성화 / 교정 모드를 비활성화할 수 있습니다.
교정 모드에서는 드라이버가 정보의 대부분의 금액을 표시 편주, 피치 및 표준화된 센서 데이터 위에 롤에 대한 각도. 센서 minima / 맥시멈는 Windows 드라이버와 비슷한 displayed.The 보정이 작동되고있다 아래 하나가 이상없이 minima / 맥시멈 바뀔 때까지 (사이드 부분 공개 포함) HMD 등을 돌릴한다. 이후 전진 장치를 설정 (당신의 관점의 중심가 갖고 싶어 방향)과 제로 방향을 설정하는 Z 키를 누르십시오. 일단 나중에 사용하기 위해 교정을 저장하기 위해 교정 보도 S를 완료했습니다. 마지막으로 보정 모드를 종료하려면 다시 C 키를 누르십시오.
기본값으로 교정이 파일에 저장되고 있습니다. vr920은 사용자가 가정에서. 당신은-c 옵션을 사용하여 다른 파일 이름을 지정할 수 있습니다. 이렇게하면이 파일은 또한 사용자의 홈에있을 것입니다. 글로벌 교정 파일 즉, 사용하려면 슬래시로 시작하는 전체 경로를 지정해야합니다.
중요 사항 : 보정하는 동안은 장치의 표시가 뭔가를 표시되어 있는지 확인하고 블루 스크린을 보여주는뿐만 아니라 디스플레이는 센서 데이터를 (최소한 내 장치에) 영향을 미치는 때문에 다른 일이 잘못 보정로 끝나야합니다.. 당신은 이것을 보장하기 위해 즉, NVIDIA-설정을 사용할 수 있습니다.
나는 창의적인 공통 비영리 라이센스하에 드라이버를 게시하기로 결정했습니다. : 현재의 전체 소스를 다운로드할 수 있습니다 vr920-드라이버 (소스) (656) 여기에서 x86_64 바이너리 : vr920-드라이버 (x86_64 이진) (455) , 또는 여기에서 i686 바이너리 : vr920-드라이버 (i686 바이너리) (401) . 더많은 이진 형식 미래에서 수정하실 수 있습니다. 당신은 libusb, libconfig + +와 libcurses가 시스템에 설치되어 있어야합니다. Libconfig + + 사용자 인터페이스에 대한 보정 데이터와 libcurses를 저장하는 데 사용되고 있습니다. x86_64 바이너리는 젠투 시스템, 우분투 하디의 i686 바이너리를 현재까지 위에 구축되었습니다. i686 바이너리를 설치하셔야합니다 libconfig + + 즉 libconfig 여기에서 + 6 _1.3.1-1 : libconfig + + 바이너리의 아무도 당신을 위해 작동하지 않으면, 당신은 소스에서 빌드해야 할 수도 있습니다 ...
소스에서 구축 :
소스 꾸러미를 풀다에서 vr920에 우편 번호 및 CD를 구축하고 만들어 실행합니다. 당신이 바이너리 기반 배포판을 사용하면 시스템에 설치된 필요한 라이브러리의 devel 버전이 있는지 확인하십시오.
미래의 계획 :
앞으로 내가 년에 출간된 jps 뷰어 확장할 계획 SIV - 리눅스를위한 입체 jps 뷰어 드라이버에서 추적 데이터를 사용하는가, 그래서 하나가 그의 머리를 설정하여 현장 주위를 볼 수 있습니다.
업데이트 : headtracking 지원 SIV의 새 버전에서 사용할 수 있습니다 : SIV-1.0 출시
각주 :
당신이 드라이버를 좋아한다면, 링크하고 자유롭게 www.mygnu.de . 그럼 제가 신청서를 검토할 수 있습니다 결국 그것에 대해 쓰기 때문에 드라이버 코멘트를 남겨주세요에서 제공하는 추적 데이터를 사용하여 응용 프로그램을 개발합니다. 상업 라이센스 정보 (에서) mygnu.de로 문의 요청하십시오. 방금 MyGNU.de에 우리의 활동을 지원 싶다면 기부 버튼을 사용 ![]()
안부
위르겐








![내 RSS 피드를 확인 [Valid RSS]](http://validator.w3.org/feed/images/valid-rss.png)



































오후 3시 13분시 2009년 3월 23일
매우 쿨! 나는 이것 오늘밤 시도를 해봐야 겠어.
당신은 SIV jps 뷰어도 아주 흥미로운 소리예요.
내 감상의 요구에 대해 간단한 스테레오 페어 뷰어를 사용 했어요. 단지 지원합니다. PPM 파일지만. 나는 jps 형식으로보고하고 실수로 귀하의 사이트를 발견했습니다. 이것은 내 행운의 날이야.
http://www-users.cs.umn.edu/ ~ wburdick / geowall / viewer.html
오후 11시 40분시 2009년 3월 23일
나는 또한 언급 뷰어를 통해 발견하지만, 대부분의 스테레오 이미지는 jps 형식이기 때문에 그것은 나를 statisfy하지 않았다. 내가 찾은 리눅스에서만 jps viever는 gqview (패치 포함)이지만 (VR920에 필요한) 쿼드 버퍼 스테레오를 지원하지 않습니다. 음, 그리고 소스를 볼에서 그것은 뷰어 (필자는 현재 SIV 동안 사용하고있는)에 headtracking을 통합하는 건 쉽지 않아 보였다. 그래서 SIV 쓰기로했다 ...
반대편에서 SIV는 statisfy 훨씬 더 라이브러리 의존성을 가지고 있습니다 ...
나는 드라이버가 당신을 위해 일하는 바랍니다. 당신이 드라이버를 시도 후 몇 가지 의견을 남길 수있다면 나는 단지 내 장치와 "내"지구 자장과 그것을 테스트할 수 있기 때문에 그것은 좋은 것입니다.
감사합니다
위르겐
오후 4시 4분시 2009년 3월 24일
어제 밤에 운전을 시도하고 작동하는 것 같습니다.
전 데비안 시드 X86-64을 사용하여 소스에서 그것을 만들었습니다.
나는 피드백을 제공 드리겠습니다. 정보는 어떤 종류의 당신에게 유용합니다? 저는 현재 자기계 magnetometers 또는 accellerometers에 대해 잘은 모르지만, 내가 조사 것이다.
어젯밤, 나는 모든 도끼에 움직임을 보았다 믿습니다.
나는 vuzix 드라이버와 비교에 사용할 수있는 사용 가능한 win2k 머신이 있습니다.
나는 창문에 vr920 많이 사용하지 않은,하지만 머리 추적을위한 완벽한 교정을받을 수가 없었어. 나는 똑바로 볼 수있다면 게임 Doom3에서는,보기뿐만쪽으로 약간 이동합니다. 나는 십자선 모양의이 아이콘도 조금 shakey 였을 겁니다. 아마 다른 프로그램이 더 나은가 아니면 아마도 나는 교정에 안 좋은거야
.
좀 더 비싼 HMD의 headtrackers이 외에도 accellerometers과 자력을 다른 센서를 가지고 어디 선가 읽은 것. 자이로 스코프?
내가 네 드라이버를 사용하는 방법을 배우고 싶은 작은 C를 알아요.
여러분들이 열심히 일해 주셔서 감사합니다!
오후 11시 12분시 2009년 3월 24일
나는 드라이버가 당신을 위해 일하는 다니 기뻐요. 의견을 보내주셔서 감사합니다. 대부분의 흥미있는 교정의 작동 방법과 부드럽고 정밀한 움직임이 얼마나 잘 알고있을 것입니다. 당신이 얼마나 드라이버를 개선하기 위해 제안이있다면, 그들은 또한 환영합니다
음, 부드럽고 정확한 움직임이 얼마나 좋은 교정의 작동 방법과 판단을 위해, 아마 출력의 데이터를 볼 충분하지 않습니다. 이것에 대한 최선의 뷰 조작에 대한 추적 데이터를 사용하는 응용 프로그램이 될 것입니다. 아마도 당신은 당신의 컴퓨터에 SIV 빌드 시도할 수 있습니다. 실제 버전은 사용자의 시스템 (의존성)에서 실행하는 경우 headtracking 지원 차기 버전도됩니다. 그래서 새 버전이 준비되면 당신은 다음 움직임을 확인 수 있습니다.
사용하는 방법을 배우기 위해 드라이버 원본 파일 democlient.cpp 한 번 있습니다. 그것은 읽기가 매우 쉽습니다.
: 한마디로
- 멀티 캐스트 소켓을 작성
- 메인 루프에서 소켓에서 구조체 TrackingData을 읽고
- 완료되면 소켓을 닫습니다
다른 프로그래밍 언어에서 데이터를 읽는 것은 또한 작동해야하지만 (자바 즉 작은 대 큰 endian)에 약간 문제가 될 수 있습니다. 아마도 나는 또한 자바 democlient를 제공해야 ...
위르겐
오후 4시 36분시 2009년 4월 5일
[...] 업데이트 : 내 VR920 headtracking 드라이버가 지금 여기에 있습니다 : VR920 headtracking 드라이버 Linux 용 [...]
오후 11시 8분시 2009년 4월 5일
만약 당신이 좋아하면, SIV의 새 버전을 이용할 수있다, 그래서 당신은 같이 드라이버를 시도할 수 있습니다.
위르겐
오후 8시 48분시 2009년 4월 6일
[...] HMD. 이렇게 당신은 (장치 이외에)이 필요합니다 보려면 headtracking 드라이버, 나는 Linux 용 VR920 headtracking 드라이버에 게시. 당신은 활성화된 [...]으로 뷰어를 사용하여 내 비디오 (demo_siv_headtracking_vr920)를 볼 수 있습니다
4시 57분에서 2009년 4월 24일 오전
안녕하세요, 위르겐, 나는 당신의 리눅스 드라이버를 시도하고 싶지만, sorce에 링크되어 지금은 작동하지 않습니다, 일부 PHP 오류 대신 드라이버 소스를 apeared.
9시 24분에서 2009년 4월 24일 오전
불편을 끼쳐 드려 죄송 해요. 다운로드가 다시 작동합니다.
11시 53분에서 2009년 7월 16일 오전
와우 어떻게 리눅스에서 VR920 videoeywear을 acess하는 방법을 여기에 쓴 것을 좋아. 존경 ...
오후 11시 13분시 2010년 7월 17일
당신은 내가 그 안경 중 하나를 사고 싶은데요했다.
감사합니다
8시 31분에서 2010년 8월 30일 오전
니스, 드라이버는 당신을 위해 일하나요? 당신이 리눅스에서 vr920와 일부 특수 어플 리케이션을 구축하는 건가요?
오후 8시 35분시 2010년 9월 6일
이니셔티브 좋은 일에 축하해!
나는 flightgear과 vr920가에 대한 합의 (타협 이상)에 와서 만드는 방법을 생각하고있다 :
- 3D 스테레오 (저는 어디부터 시작 할까 비행 자체를 기어 openscenegraph NVIDIA 드라이버, 이것에 대해 모릅니다 xorg???)
- 헤드 추적 (이것은 아마 당신의 드라이버가 보내는 데이터를받을 수 있도록 '가짜 조이스틱'드라이버를 작성하기위한 ...)
오후 10시 33분시 2010년 9월 6일
수출 OSG_STEREO_MODE = ANAGLYPHIC; 수출 OSG_STEREO = ON
9월 7일, 오후 11시 21분시 2,010
나는 openscenegraph-2.8.2으로 스테레오 모드를 bufferred 쿼드로 flightgear을 썼다. 이것은 (노 스테레오 디스플레이와 잘못된 그래픽) 작동하지 않았다. (중 댓글이 참조 http://www.mygnu.de/index.php/2010/03/flightgear-2-0-0-on-gentoo/을 ). Anaglyph 스테레오 작품,하지만 flightgear와 함께 실패하는 (수출 OSG_STEREO_MODE은 = QUAD_BUFFER fgfs) 진정한 스테레오가 있어야 vr920 같은 장치와 함께, 나를 위해 올바른 방법이 아닙니다. 내 경험에서 버그 openscenegraph 또는 flightgear에 있어야합니다. 한 그것을 검색하기 시작할 수 몰라요. 나는 몇몇 리눅스 프로젝트 (openscenegraph와의없이)에서 쿼드 bufferred 스테레오를 사용하고이 문제를 가진 적이 있기 때문에 운전자는 이에 대한 책임을 의심하지 않습니다. flightgear는 스테레오로 작동하는 때, 썼던 것처럼 저는 flightgear위한 headtracking 기능을 구현하고 싶습니다. 그것은 바로 앞으로 나 SIV, 제 jps 뷰어에서 사용되는 동일한 방법이어야합니다. 멀티 캐스트 소켓을 통해 드라이버에서 데이터를 가져와서 osg 카메라를 회전하는 데 사용합니다. 당신이 그것의 작동 방식에 관심이있다면, SIV 소스 (VR920TrackingManipulator.cpp) 좀 봐. 가짜 조이스틱 드라이버는 경험의 절반을 줄 수 있습니다. 제 생각에는 추적 기술의 주요 문제는 그것에 대한 제조 업체에 독립적인 인터페이스 (우리가 조이스틱을 위해있는 것)가 없다는 것입니다, 응용 프로그램이 seperately 각 추적 장치를 지원하는 군. 그렇지만, 나 또한 어디오고 같은 기준을 가지고 시작하는 생각이 없습니다. 드라이버 개발을 추적에 관련된 다른 사람들이 이것을 읽고 그것에 협력하는 데 동의한다면 아마, 이것은 시작하는 올바른 방법이 될 수 있습니다.
2시 30 분에 2010년 11월 5일 오전
[...] 올해는 여기 VR920 HMD 위해 내 리눅스 headtracking 드라이버의 첫 번째 버전을 발표했다. 현재 저는 다음과 같은 추가가되는 새로운 드라이버 버전을 조사 중이고에서 [...]