upgrade experiences with nvidia-drivers-180.51

Today, during my regular upgrades, I upgraded my gentoo boxes to nvidia-drivers-180.51, which is the latest version in portage. Since the error in dmesg

bluetooth-apple[10079] general protection ip:7fec32b2cebe sp:7fff3dc7ff00 error:
0 in libGL.so.180.51[7fec32ad6000+a5000]

I mentioned in CTRL-C and CTRL-Z not working after nvidia-driver upgrade and high CPU usage and saw in later releases still occurs and therefore I expect more problems, I downgraded to nvidia-drivers-180.29 again.  Since I upgraded  to xorg-server-1.5.3 in the meanwhile, I am sure now, that the problems are not related to incompatibilities with the older xorg release I ran before.

Did anyone monitor the driver release any closer? How were your experiences?

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

SIV-1.0 released

I’m proud to present a new version of SIV, the stereoscopic jps viewer for Linux I published first in SIV – a stereoscopic jps viewer for Linux. SIV is  capable of displaying jps stereo images in different stereo modes. I tried it in fullscreen/windowed mode with anaglyphic and quad buffered stereo mode. Different output devices I tested were my Vuzix VR920 and relevator shutter glasses  on Nvidia Quadro FX 350M and FX 3400. It should also work with an Ati FireGL, but I never tried this. The new version fixes some segfaults, that occured when needed libraries were missing. Furthermore I added a slideshow mode and the possibility to specify a default distance and therefore the possibility to set a default zoom factor. The coolest feature I added to the viewer is the headtracking support for the Vuzix VR920 HMD. For this you will need (in addition to the device 😉 ) the headtracking driver, I published in VR920 headtracking driver for Linux. You may watch  a video (demo_siv_headtracking_vr920) of me using the viewer with enabled headtracking to view some photos of NASA’s Apollo missions  downloadable from nvidia forums.

Usage changes:

New commandline options are:

  • -s                                         Enable slideshow mode
  • -t                                         delay Delay for slideshow mode,
    defaults to 10 sec
  • -d                                         distance (values between 0.0 and
    1.0 are senseful)

These new options control the new headtracking support:

  • –vr920                             enable headtracking support for the vuzix vr920 hmd
  • -m                                        non default multicast ip
  • -p                                         non default multicast port

For detailed information on the -m and -p options see the article about the headtracking driver : VR920 headtracking driver for Linux. They have the corresponding meaning. If you want to try out the headtracking, enable the headtracking support with the –vr920 option. You may want to specify the distance to the image with the -d option. Values between 0.25 and 0.5 seem to have a nice effect when using the headtracking. When headtracking is active you may press Z to set the zero view so that with your current head position you will see the center of the image. If you want to manipulate the view manually press 2 to enable the trackball manipulator and use i.e. the right moue button and up or down movements (with the mouse) to control the distance (zoom in or out). Afterwards press 1 to activate headtracking again.

For more usage documentation see: SIV – a stereoscopic jps viewer for Linux

Download:      

I decided to publish the viewer under the creative common noncommercial license. Make sure you have the OpenSceneGraph library installed before trying to compile or run the viewer. You may download the full source (Eclipse Project) from here: [download#9] or an x86_64 binary from here:  [download#10]. More binary formats may be available in the future. Fore the x86_64 binary you’ll need OpenSceneGraph-2.8.

Binaries for most linux distributions can be downloaded from www.openscenegraph.org.  Instructions on how to build OpenSceneGraph on gentoo can be found on PlopByte.

Building from source:

For building from source unpack the zip and cd to siv/Release and run make.

Footnote:

If you like the viewer, feel free to link to www.mygnu.de. To request commercial licenses contact us at info(at)mygnu.de. Well, if you just want to support our work on MyGNU.de use the donate button 😉

best regards and enjoy the 3rd dimension

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading...

Upgrade to compiz-fusion-0.8.2

Today, when I ran the regular update of my gentoo systems there was an update for compiz-fusion in portage. The compiz update did not work out of the box on my x8_64 systems, missing keywords, blocking packages, wrong manifests, etc.

Here is the way I got it to work:

emerge -uND world

!!! All ebuilds that could satisfy “~x11-plugins/compiz-plugins-main-0.8.2” have been masked.
!!! One of the following masked packages is required to complete your request:
– x11-plugins/compiz-plugins-main-0.8.2 (masked by: ~amd64 keyword)

Add to /etc/portage/package.keywords:

=x11-plugins/compiz-plugins-main-0.8.2 **
=x11-plugins/compiz-plugins-unsupported-0.8.2 **
=x11-plugins/compiz-plugins-extra-0.8.2 **

emerge compiz-fusion

[blocks B ] x11-plugins/compiz-fusion-plugins-extra (“x11-plugins/compiz-fusion-plugins-extra” is blocking x11-plugins/compiz-plugins-extra-0.8.2)
[blocks B ] x11-plugins/compiz-fusion-plugins-main (“x11-plugins/compiz-fusion-plugins-main” is blocking x11-plugins/compiz-plugins-main-0.8.2)
[blocks B ] x11-plugins/compiz-fusion-plugins-unsupported (“x11-plugins/compiz-fusion-plugins-unsupported” is blocking x11-plugins/compiz-plugins-unsupported-0.8.2)

emerge -C compiz-fusion-plugins-extra compiz-fusion-plugins-main compiz-fusion-plugins-unsupported

emerge compiz-fusion

!!! A file listed in the Manifest could not be found: /usr/portage/x11-plugins/compiz-plugins-extra/files/compiz-plugins-extra-no-gconf.patch

ebuild /usr/portage/x11-plugins/compiz-plugins-extra/compiz-plugins-extra-0.8.2.ebuild digest

Note: The generation of the digest is only a temporary solution. There should be the correct manifest in the portage tree.

emerge compiz-fusion

* Messages for package x11-wm/emerald-0.8.2:

* Cannot find $EPATCH_SOURCE! Value for $EPATCH_SOURCE is:
*
* /usr/portage/x11-wm/emerald/files/emerald-ru.po.patch
* ( emerald-ru.po.patch )
*
* ERROR: x11-wm/emerald-0.8.2 failed.

cd /usr/portage/x11-wm/emerald/files/

ln -s emerald-0.7.8-ru.po.patch emerald-ru.po.patch

Note: The symlink is only a temporary solution. The file should be added to the portage tree.

ebuild /usr/portage/x11-wm/emerald/emerald-0.8.2.ebuild digest

emerge compiz-fusion

Afterwards I had a working compiz-fusion-0.8.2 .

regards

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

Upgrade to nvidia-drivers-180.41

Today I upgraded my Gentoo systems to nvidia-drivers-180.41.  I had bad news to report the last two times I upgraded nvidia-drivers in nvidia-drivers-180.37 causing strange segfaults and CTRL-C and CTRL-Z not working after nvidia-driver upgrade and high CPU usage.

Well, since I had bad news before I also want to tell you about the good news. I did not experience any problems yet with nvidia-drivers-180.41. I run Gentoo with kernel 2.6.28-zen4 #1 SMP PREEMPT on x86_64 and tried with Quadro FX3400 and Quadro FX350M. Even tuxonice works on my  Dell Precision M65 with the driver. In the past I sometimes had problems with suspending and some nvidia-driver versions.

Well, not everyone is as lucky as I am. Some cards seem not to be recognized anymore by the driver. You can read about this problem on 180.41 — no more support for 6600?

I’m quite happy to have a new working driver after the last two upgrade attempts.

Edit: Sadly I was wrong in this post. nvidia-drivers-180.41 also causes segfaults as well as 180.44 does. These segfaults occur during heavy CPU/MEM usage. (In my case running 6 instances of mencoder simultaneously on 4 cores). After downgrading again to 180.29 everything returned to normality.

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

New version of SIV coming soon

I just fixed some bugs and implemented a slideshow mode in SIV, the viewer for stereoscopic jps  images, I published in  SIV – a stereoscopic jps viewer for Linux.  As I wrote before in  VR920 headtracking driver for Linux I want to extend the viewer using the tracking data from the VR920 HMD, so one can look around the scene by turning his head. Once this work is done you can enjoy a new experience in 3D.  So expect the download of a newer version of SIV to appear soon on MyGNU.de.

In the meanwhile you may want to share your experiences with the viewer. What do you like the viewer for? What do you think should be improved?

Stay tuned for updates 😉

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

VR920 headtracking driver for Linux

As I promised in VR920 Headtracking driver development here comes a usable version of my headtracking driver for the Vuzix VR920 iwear for Linux. Again I want to thank MalMal of Vuzix Forums, from whose code I was able to learn how to read the Sensor data out of the device via USB. For general Information on how to use the device with Linux see:  Vuzix VR920 with Linux and active 3D stereo.

I managed to calculate yaw, pitch and roll from the accelerometer and magnetometer data (The device has got three of each). This makes a 3DOF tracking possible and would allow you to look around in a 3D Scene.

The driver sends the tracking data via network as UDP multicast, thus many clients may read the data, which makes parallelization more possible, i.e. one could use one machine for rendering and another machine for calculations. In addition to this, the approach to send the data out via network makes the language used for writing the application independant from the language used for developing the driver.

The tracking data sent to the clients contains the three angles, yaw, pitch and roll and for easy usage a viewmatrix, one can directly use with scenegraph libraries. If you intend to develop an application using the headtracking of the VR920 see the file democlient.cpp included in the download for details on how to get the data into your application.
Below is a screenshot of the driver during calibration:
vr920 driver screenshot
vr920 driver during calibration ( screenshot)

Usage:

./vr920 -h vr920 [-h] [-?] [-m multicast ip] [-p multicast port] [-c calibrationfile]

On the commandline you may specify a multicast address and a port to send the data to. If you choose not to define these values the driver will send the tracking data to a sane default (224.0.0.42:4242). In any case, the client using the tracking data has to join the same address with the same port. You may decide not to use real network, if you only want to use the data on the same machine. In this case you may use loopback networking.

Add the route for the multicast address to the loopback interface:  route add -host 224.0.0.42 lo

Delete the route:  route del -host 224.0.0.42 lo

After executing the driver it instantly starts to send the trackingdata. Initially it starts in “silent” mode. You may activate/deactivate the monitor mode by pressing the M key. In monitor mode the driver displays the angles for yaw, pitch and roll. By pressing the C key you can activate/deactivate the calibration mode.

In calibration mode the driver displays  the most amount of information, the angles for yaw, pitch and roll above the normalized sensor data. Below the minima/maxima of the sensors are being displayed.The calibration works similar to the windows driver, one has to turn around the HMD (with the side-pieces open) until no minima/maxima changes anymore. Afterwards turn the device forward (the direction where you want to have the center of your view) and press the Z key to set the zero direction. Once you have completed calibration press S to store the calibration for future use. Finally press the C key again to exit calibration mode.

As default the calibration is being saved to the file .vr920 in the users home. You may specify a different filename using the -c option. If you do so this file will also be in the users home. To use i.e. a global calibration file you have to specify the full path  starting with a slash.

Important note: During calibration make sure that the display of the device is displaying something. Since the displays not only showing a blue screen influences the sensor data (at least with my device) you’ll end with wrong calibration else. You may use i.e. nvidia-settings to ensure this.

Download:

I decided to publish the driver under the creative common noncommercial license. You may download the full source from here: [download#7], an x86_64 binary from here: [download#8] , or an i686 binary from here: [download#15]. More binary formats may be available in the future. You need to have libusb, libconfig++ and libcurses installed on your system. Libconfig++ is being used to store the calibration data and libcurses for the user interface. The x86_64 binary has been build on an up to date gentoo system, the i686 binary on ubuntu hardy. For the i686 binary you will need to install libconfig++ i.e. libconfig++6_1.3.1-1 from here: libconfig++ If none of the binaries works for you, you may have to build from source…

New version available here.

Building from source:

For building from source unpack the zip and cd to vr920 and run make. If you use a binary based distribution, make sure you have the devel version of the needed libraries installed on your system.

Future Plans:

In the future I plan to extend the jps viewer I published in SIV – a stereoscopic jps viewer for Linux to use the tracking data from the driver, so one can look around the scene by turning his head.

Update: New version of SIV with headtracking support is available at: SIV-1.0 released

Footnote:

If you like the driver, feel free to link to www.mygnu.de. If you developed an application using the tracking data provided by the driver please leave a comment, because then I can review the application and eventually write about it. To request commercial licenses contact us at info(at)mygnu.de. Well, if you just want to support our work on MyGNU.de use the donate button 😉

best regards

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading...

VR920 Headtracking driver development

I made some progress in developing a Linux driver for the Vuzix VR920 iwear headtracking. Thanks to MalMal on Vuzix Forums I was able to learn how to read the Sensor data out of the device via USB. I managed to calculate yaw, pitch and roll from the accelerometer and magnetometer data (The device has got three of each). This makes a 3DOF tracking possible and would allow you to look around in a 3D Scene. Also a use as X11 input device would be possible. One could move the window one sees on a virtual Desktop by turning his head. For this we would need a new X11 input driver which  maps the tracking data to the  viewport of the virtual screen. How about full HD with 640×480 displays? 😉

The driver sends the tracking data as UDP multicast, thus many clients may read the data, which makes parallelisation more possible, i.e. one could use one machine for rendering and another machine for calculations.

The calibration works similar to the windows driver, one has to turn around the device until no values increase anymore.

I still have to improve the calibration mechanism. It still lacks the set zero feature. Also I have to make movements appear more smooth. Well, these are more or less minor problems and I should solve them soon. So expect to see a download ready version soon on mygnu.de.

Stay tuned for updates.

Jürgen

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

siteinfo

Translator