VRTrack 1,0 - headtracking drivrutin för vr920 HMD

Som jag lovade i Ny version av vr920 headtracking föraren kommer snart här är den nya versionen av min headtracking drivrutin för Vuzix VR920 iWear för Linux. Den beräknar gir, lutning, roll från accelerometern och data magnetometer (Enheten har fått tre av varje). Detta gör en 3DOF spårning möjligt och ger dig möjlighet att titta runt i en 3D-scen. I exempel kan du använda drivrutinen med min stereoskopisk bildvisare SIV . Föraren genomsnitt sensorn avläsningar med en förbättrad algoritm som ger en mycket smidigare än med den ursprungliga version av drivrutinen. Föraren Paketet består av en demon som kan köras i bakgrunden och för enkelhetens skull en grundläggande kontroll program som gör det möjligt att enkelt justera de olika drivrutinsinställningar och callibrate enheten. För allmän information om hur du använder enheten med Linux se: Vuzix VR920 med Linux och aktiv 3D stereo .

Föraren ger trackingdata i olika format till ansökan att använda det. Det skriver alltid data till / dev / headtracking. En linje läsa från / dev / vrtrack består av sex flottörer som motsvarar en sensor läser i detta format:

gir stigning rulle xyz

Gir, lutning, roll är vinklar från 0 till 360 grader. X, y och z är alltid noll för vr920, eftersom den endast kan hantera tre frihetsgrader. Dessa värden är reserverade för framtida enheter som kan stödja sex frihetsgrader, i hopp att föreslå en standard för spårning enheter.

Föraren kan skala mätvärdena och vänd axlarna självständigt för att få den nödvändiga värdeområde för den använda program och en behaglig upplevelse.

För maximal kompatibilitet med befintliga program finns det fyra andra driftlägen tillgängliga som kan aktiveras separat:

  • Joystick emulering
    Föraren emulerar en joystick enhet / dev / input / jsX. Avläsningarna för gir, stigning och valsen är på X-, Y-och Z-axeln hos den emulerade styrspaken. Detta kan användas för att möjliggöra grundläggande headtracking stöd i spel som inte naturligt stöd headtracking.
  • Mus-emulering
    Föraren emulerar en joystick enhet / dev / input / mouseX. Mätvärdena för gir-och delning översätts till X och Y i musenhet, så när du ser rätt dragen muspekaren åt höger och när du tittar upp pekaren rör sig uppåt och vice versa. Detta kan också användas för att möjliggöra grundläggande headtracking stöd i spel som inte naturligt stöd headtracking. Den kan också användas för att precis styra muspekaren av fönstersystemet. Styrning av synporten för fönstret systemet kan också vara en resonabel ändamål. Med den nya MPX förlängningen i xorg detta kan vara möjligt.
  • UDP - nätverk
    I UDP läge föraren skickar spårning data via nätverket som UDP unicast. Metoden för att skicka data ut via nätet gör det språk som används för att skriva programmet oberoende från det språk som används för att utveckla föraren. Paketet som sänts till klienterna innehåller de tre vinklar, gir, lutning och valsen och x, y och z som 32 bitars fast punkt i Q16.16-format. Detta läge kan säga används för att styra flightgear.
  • Multicast - nätverk
    I multicast-läge föraren skickar spårning data via nätverket UDP multicast, därmed många kunder kan läsa data, vilket gör parallellisering mer möjligt, dvs man kan använda en maskin för rendering och en annan maskin för beräkningar. Utöver detta gör att metoden att skicka data ut via nätverk det språk som används för att skriva programmet oberoende från det språk som används för att utveckla föraren. Uppföljningsnumren data som skickas till kunderna innehåller tre vinklar, gir, lutning, roll och för enkel användning en viewmatrix kan man direkt använda med scenegraph bibliotek. Om du tänker att utveckla ett program med headtracking av VR920 se filen democlient.cpp som ingår i nedladdningen för information om hur man får data till din ansökan. Detta läge används av stereoskopiska bilden betraktaren SIV .
Nedan är en skärmdump av kontroll ansökan under callibration av en vr920 enhet:
control app VRTrack 1.0   headtracking driver for the vr920 HMD vrtrack föraren under kalibrering (skärmdump)

Viktigt: Vid kalibrering se till att displayen på enheten visar något Då visas inte bara visar en blå skärm påverkar sensordata (åtminstone med min enhet) du kommer att sluta med felaktig kalibrering annat.. Du kan använda IE nvidia-settings för att säkerställa detta. För detaljerade bruksanvisningar se readme som ingår i nedladdningen.

Ladda ner: 88x31 VRTrack 1.0   headtracking driver for the vr920 HMD Commercial license button VRTrack 1.0   headtracking driver for the vr920 HMD

Jag bestämde mig för att publicera föraren Creative Common icke-kommersiell licens. Du kan hämta den fullständiga källan härifrån: vrtrack-1.0.tar.gz (390) , en x86_64 binär härifrån: vrtrack-1.0-x86_64.tar.gz (321) , eller en i686 binär härifrån: vrtrack-1.0- x86.tar.gz (327) . En Archlinux PKGBUILD från Feilen finns här: aur.archlinux.org Fler binära / distribution specifika format kan vara tillgängliga i framtiden. Den x86_64 binära har byggts på en uppdaterad Gentoo systemet, i686 binära på Ubuntu Hardy. För i686 binära får du installera libconfig + + dvs libconfig + 8 _1.3.2-2 härifrån: libconfig + + Om inget av binärer fungerar för dig, kan du behöva bygga från källkod ...

Du måste ha libusb, libconfig + +, libfuse och libcurses installerade på ditt system. För ubuntu-användare jag tagit det lilla ubuntu_install_deps.sh shell script som installerar beroenden. Kanske det fungerar även för andra Debian-baserade distributioner. Gentooanvändare måste bara se till att libusb och ncurses, säkring, och libconfig har uppstått. Din kärna version måste vara minst 2.6.31 och du måste ha Cuse aktiverat i din kärna.

Fotnot:

Om du gillar föraren, gärna länka till www.mygnu.de . Om du har utvecklat en tillämpning som använder spårning uppgifter som föraren lämna gärna en kommentar, för då kan jag se över tillämpningen och så småningom skriva om det. För att begära kommersiella licenser kontakta oss på info (at) mygnu.de. Tja, om du bara vill stödja vårt arbete MyGNU.de använda Donera-knappen icon wink VRTrack 1.0   headtracking driver for the vr920 HMD

vänliga hälsningar

Jürgen

 VRTrack 1.0   headtracking driver for the vr920 HMD
1 Star2 Stars3 Stars4 Stars5 Stars (Inga betyg ännu)
Loading ... Laddar ...

Fel enheter i GNOME-sensors-applet

För ett tag sedan märkte jag my gnome-sensors-applet som visar fel enheter för vissa sensorer. Dvs den visade en "A" bredvid en fläkt sensor värde. Eftersom jag hade samma problem en gång innan jag kom ihåg att snabbt hur man löser det. Eftersom jag inte hittade något om detta problem i nätet, bestämde jag mig för att skriva detta inlägg.

Anledningen till de fel enheterna är felaktiga data som lagras i gconf. Varje sensor har en typ. Om denna typ lagras Wrong appletar konfiguration applet visar fel enhet för sensorn. Givartyper jag känner är:

  • 0 - ström (A)
  • 1 - fläkt (RPM)
  • 2 - temperatur (C eller F, beroende på urval)
  • 3 - spänning (V)

För att ändra appletar konfigurationen till höger givartyper startar gconf-editor.

Sök efter nyckeln namnet sensors_applet_version. På samma plats finner du egenskaperna hos sensorer applet. Öppna sedan (DoubleClick på vardera) nycklarna ids eller etiketter och sensor_types redigera viktiga sidor och flytta dem bredvid varandra för att identifiera vilken sensor Type-fältet tillhör vilken sensor.

gconf gnome sensors units Wrong units in gnome sensors applet

Nu ändra sensorer med fel typ inställningar till riktiga. Sedan från konsolen utfärda ett killall gnome-panel för att tvinga konfigurationen för att få nytt. Efteråt ska du få rätt enhet visas bredvid dina sensordata.

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (Inga betyg ännu)
Loading ... Laddar ...

Vuzix VR920 med Linux och aktiv 3D stereo

Jag fick nyligen min VR920 3D stereoglasögon från USA. En detaljerad genomgång av enheten kan hittas här: Presentation av Vuzix iWear VR920 . Ett foto av VR920 kan ses nedan:

vr920 Vuzix VR920 with Linux and active 3D stereo

Enheten naturligtvis fungerar felfritt med Windows. Situationen under Linux är lite annorlunda, på grund av saknad förarstöd från tillverkaren som vanligt.

Stereoseende arbetar åtminstone med nvidia Quadro kort, sannolikt även med andra. Dvs Ati FireGL bör fungera, men jag har aldrig provat detta. Ställa upp detta var lätt. Jag hade bara för att starta en andra XServer och lägga till raden

Option "Stereo", "1"

in i skärmen delen av dess xorg.conf. Med denna inställning får du en annan bild för både ögon och därmed verkliga stereoseende Om programmet har stöd för quad-bufferred stereo. Det är viktigt att skärmupplösningen är mellan 640 × 480 och 1024 × 768 och uppdateringsfrekvensen är 60 Hz. Den xorg.conf du använder för detta måste inte använda komposit förlängning. För att inaktivera Composite förlängningen bifoga följande till xorg.conf:

Avsnittet "extensions"
Option "Composite" "Disable"
EndSection

Tyvärr detta också förhindrar användningen av Compiz, fixar förhoppningsvis Nvidia oförenligheten mellan stereo och det sammansatta förlängningen en dag.

För att starta xserver Jag använder följande lilla script, som öppnar 2 xterms och startar programmet (givet som parameter med argument) i en av dem.

#! / Bin / bash

/ Usr/X11R6/bin/X: 1-dpi 96-XF86Config ./xorg.conf.3d-auth / var / gdm /: 1.Xauth vt8 &
DISPLAY =: 1,0
export DISPLAY
sover 5
icewm &
snabbtangenter och
xterm-fn 9 x 15 och
xterm-fn 9 × 15-e $ @ &

Hörlurarna blir detekteras som alsa-enhet:

usb 2-2: new full fart USB-enhet med hjälp uhci_hcd och adress 8
usb 2-2: konfigurationen # 1 väljs från 1 val
generic-usb 0003:1 BAE: 0.002,0002: hiddev0, hidraw1: USB HID v1.00 Device [Icuiti Corp VR920 Video Eyewear] på USB-0000: 00:01 d.1-2/input3
usb 2-2: ny USB-enhet hittas idVendor = 1bae, idProduct = 0002
usb 2-2: ny USB-enhet strängar: MFR = 1, Product = 2, serialNumber = 0
usb 2-2: Produkt: VR920 Video Eyewear
usb 2-2: Tillverkare: Icuiti Corp
usbcore: Registrerad Nytt gränssnitt föraren snd-usb-audio

cat / proc / asound / kort:

1 [Eyewear]: USB-Audio - VR920 Video Eyewear
Icuiti Corp VR920 Video Eyewear med usb-0000: 00:01 D.1-2, full fart

Jag kunde få mplayer att spela på enheten genom att ställa in utmatningsenhet för att hw = 1,0.

Tyvärr biandaren inte verkar fungera. Åtminstone mixer nivåer är inte kontrollerbar. Kanske något alsa utvecklare har en idé om detta? Det är ännu viktigare eftersom shuntreglering hjulet på enheten fryser efter tre steg när du använder linux.

Viktigare än att ha kontrollerbar ljudet är att få den integrerade headtracking att arbeta. Det är en icke-arbetande förare vid Vuzix forum. Åtminstone kan läsa sensordata från enheten, men verkar inte hantera data korrekt. Jag kommer att titta på detta snart.

Uppdatering: Min VR920 headtracking föraren finns nu tillgänglig här: VR920 headtracking drivrutin för Linux

Leka med enheten var jag tvungen att veta att det inte finns någon JPS stereobilden tittaren för Linux. Den enda programm jag hittade, som kan läsa JPS-bilder är gqview ( GQView3D ). Tyvärr gqview inte kan visa finns dessa bilder med användning aktiv quad-buffrad stereo. Så jag beslöt att skriva min egen JPS tittaren. Det kommer att baseras på OpenSceneGraph ( OpenSceneGraph ) eftersom jag har viss erfarenhet av OpenSceneGraph utveckling. Jag kanske kan integrera headtracking i den. Skulle vara riktigt coolt att se en bild havet panorama i 3D genom att vrida på huvudet icon smile Vuzix VR920 with Linux and active 3D stereo

Håll ögonen öppna för uppdateringar.

Jürgen

 Vuzix VR920 with Linux and active 3D stereo
1 Star2 Stars3 Stars4 Stars5 Stars (Inga betyg ännu)
Loading ... Laddar ...
2009/02/05

mygnu information

Blog Roll

Site Info

Trans lator

English flagItalian flagKorean flagChinese (Simplified) flagChinese (Traditional) flagPortuguese flagGerman flagFrench flag
Spanish flagJapanese flagArabic flagRussian flagGreek flagDutch flagBulgarian flagCzech flag
Croatian flagDanish flagFinnish flagHindi flagPolish flagRomanian flagSwedish flagNorwegian flag
Catalan flagFilipino flagHebrew flagIndonesian flagLatvian flagLithuanian flagSerbian flagSlovak flag
Slovenian flagUkrainian flagVietnamese flag