more wii plots

So after all today’s hard work, still some time for a bit wiimote fiddling 😉
I extended my test app to show the raw accelerometer data.


wiimote accelerometer data

A few words about what is which graph and the color coding:
The left graph shows the same as 2 days ago, except, I switched the colors to remember the meaning more easily. 😉 Red is for Roll =) and blue is the pitch. These data are calculated by the wiiuse library.
The right graph shows the raw accelerometer data. It is simply showing the x (red), y (green) and z (blue) component of the acceleration vector.

The experiment here shows 2 rolls to the left (and return), followed by 2 translations to the left. One could argue that a translation to the left, from the accelerometer’s viewpoint, is just the same as a roll, since both are changing the gravitation vector temporarily in a similar way. I’d say there still seems to be a difference.. 🙂

Paul, I’m open for discussion 😉

Wiimote experiment

Okay, so I finally got to it. A few months ago I bought a wiimote to play a bit with the api’s floating on the net. It was until yesterday that I actually tried a driver, and since that seemed to work okay, I decided to give it a try myself. My simple goal, being an app plotting the raw inputs. However, it took me a 2 hours more than expected (1 =)) and also a lot more blood, sweat and tears. 😉 particularly because I made a lot of mistakes due to me being too tired 😉 So I will keep it short for now as I want to go to sleep.

I choose the wiiuse library as it seemed adequate for the job and still active (and even cross platform!). I started from the included example and tried to wrap it into a Qt app (hence I named it example-qt ;)). The obvious choice for drawing is using QGraphicsView. However, for once ;), I took the effort to see if there are no existing Qt graph plotting libraries. And this just happens to be the case. 🙂 Meet the excellent QWT lib. It couldn’t be more fit for the job. The site is (almost) nothing but the api docs, but that seemed sufficient. One second I thought this lib would not be qt4 ready, but it has been ported!

Quite a few seconds and segfaults later 😉 I got this:
wii experiment

Nothing fancy, but it does show the roll and pitch!! =)

Note: the wiimote survived the experiment 😉

Portal on linux

Portal: Prelude triggered me to finally try out Portal under linux / wine. Actually the only games I played since I’m on linux are Urban Terror and … Peggle Extreme. 🙂 Don’t laugh, it was a Steam test. 😉 And I didn’t have any space to install anything bigger. Until I bought that 0.5TB drive a while ago, still didn’t fill that one up, so today I decided to try it out under opensuse 11.0 with KDE 4.1 and wine 1.1.6. I somehow messed up my steam install under 10.3 and since I got 15GB free on my suse 11 partition and up to date video drivers (since it is also a kde 4 tryout install), this seemed like an ideal environment. Indeed, it actually went very smoothly.

  • install latest wine from build service
  • install iexplore gecko replacement by surfing to an url: wine iexplore http://winehq.org
  • download steam msi (exe no longer needed!) and run: wine start steaminstall.msi
  • see the update fail and resume it manually: nice -n 19 wine Steam.exe or wine steamTmp.exe SelfUpdate “Steam.exe” 14
  • create a desktopshortcut from steam. you have to use kde 4.1 folderview if you actually want to see it 😉
  • run!

Some screenshots to prove 😉


Portal on linux / wine Portal on linux / wine

While framerate seems okay and my savegames and profile seem intact, I did experience some graphical glitch: when looking through portals, sometimes white flicker occurs. I didn’t investigate any further as it’s late enough.

Portal: prelude

As a huge portal fan, I’m delighted to read we can already taste some prequel goodness through this great mod.

Apparently, the author worked on it very secretly for some time so obviously he was very disappointed when Valve announced it would also make a prequel. 😉 However this motivated him to finish it as soon as possible. Also, Valve didn’t see any problem or violation in this project and even offered its help.

Thanks to Klaas for the tip.

Optimizing the linux boot process

How fast your linux boots, really depends on your distro and of course it’s their job to have it boot as fast as possible. They try as much as possible scenarios and make sane decisions on where to optimize. But they can’t test every possible configuration, so what if you just end up with a suboptimal situation (possibly without realizing? :)). Even if you know your boot takes too much time, how would you locate the culprit(s)?

This is where Bootchart jumps in. Bootchart is a tool which makes it possible assess resource consumption throughout boot time. It is really simple to set up, just add a kernel param! Data is collected in memory using tmpfs and dumped to disk at the end of the boot process. This data then gets processed by a java app which outputs an SVG/PNG.

It seems the opensuse guys, actually coolo, used this tool to optimize boot performance for opensuse 10.3. I must say I am quite satisfied with my opensuse boot times although I do have the impression that 11.0 seems to be a tad slower than 10.3. So I’m definitely going to try out this tool and compare the results 🙂

Thanks to my brother for the tip.

Part 2

Accidentally, a few hours after writing this post, I ran into this very interesting article about boot speedups presented at the Linux Plumbers Conference last month. (Watch a modified fedora boot in 5 secs on an eeePC)

KTvTune 0.2

This version fixes an important crash bug when trying to make multiple recordings in the same session. I never do that, that’s why it was still in there for the 0.1 release 😉

New addition is the ability for timed recordings which you can specify either by duration or by end time (see screenshot). Next logical step is to be able to schedule a timed recording.

KTvTune 0.2

Download at kde-apps.org

KTvTune v0.1

Yes, the versioning has begun 🙂 This week I realised it’s silly to put programs like this one online, but it’s also silly to keep it for myself while maybe some other poor pvr150 soul could be blessed by it. =) So, in finding a way to put it online, I thought I’d put it on kde-apps.org. Great site. But it also comes with some “discipline”. I have to state what it already does (aka keep a changelog) and what it doesn’t (oops, where’s the consistency?), give it a version, make at least some source distribution and in return I’ll probably get dumped a sh_tload of crap on my head for producing such a silly program. But in any case, I’ll have a free hosting and advertising for it. =) 😉

So in preparation, I’m making this post to wrap up a 0.1 release.

What’s changed?
I don’t remember actually =) 29 nov has been some time.. mm, let’s browse some cvs logs

  • configurable player startup delay on record to allow some buffering on disk, otherwise the player bails out on an empty file
  • debug flag so that people are not disturbed by testing UI elements 😉
  • add / delete channels (besides editing ;))
  • put everything in a kdevelop project (proj started using eclipse, but after all the crashes I simply used a console, until now)

some screenshots to close:


KTvTune channel edit mode
channel editing mode

ktvtune icon
my magnificent svg skillz in action for ktvtune icon 😉

You made it

I discovered this great game site: The Independent Gaming Source which is all about indie games. While those games really feel back-to-basics, they also feel back-to-roots; you know, what gaming really is about. 😉 While I admit to be colored by some nostalgia, it really makes you ponder what good games really are about.

Due to the size of big game companies and the money involved, refreshing game concepts are too risky to try out. But this doesn’t affect the indie game developer who has nothing to loose. So we actually shouldn’t be surprised to find some very entertaining game concepts in the indie camp, be it maybe somewhat less polished or technically advanced as its ‘commercial’ siblings.

I just played “You made it” (runs fine under linux/wine) and although the concept is so simple, I was surprised how addictive it was and how I loved the added difficulty induced by a non clearing backbuffer. 🙂

You made it

try it for yourself