Lorenz Cuno Klopfenstein

Posts tagged "Projects"

This week I spent some time improving the interface and the underlying engine of the DMX Lightshow application. Every channel does now smoothly adjust its output values in order to make sudden changes less ugly (changes from one animation to the next are much more smooth as well). Additionally, each channel can now abstract one or more real DMX channels: this way it's now possible to register two or more channels on a single slider and change all channels simultaneously.

The interface.

I also made some changes to the interface (nothing groundbreaking): it's still ugly as hell, but at least it is also slightly more usable. Anyway, I'm a long way from the point where I'll confidently be able to use the application in a live scenario: I need way more shortcuts and presets in order to easily do some of the most common tasks (like fading out all channels at once).

Applet selection and channel assignment.

The application is also pretty modular: all applets (there's only one at the time, though  :D) are simply loaded by the interface they expose. Same goes for animations that can be applied to every single channel.

Enough talk... here's a new experiment!  ;)
I tried to play along "19:08", by my brother's band Spasmodicamente, but without any preparation and doing everything interactively (my brother would yell all changes and cues from behind, but I didn't get everyone of them and felt pretty helpless while I was clicking wildly around...). So, the show is pretty lame, but there is some potential!


Video on Vimeo.

By the way... you can download the music by Spasmodicamente from their website for free!  ;)

Posted on Thursday, December 04, 2008
395 Views
5 comments posted

I spent last week trying to go on with my "DMX Lightshow" project: first of all, I finally decided to build a WPF-based interface; since the application will have to refresh at least 40 times per second, having GPU-accelerated graphics will certainly help (and learning WPF can't harm either). I also ended up architecting a nice framework around the basic API of the SIUDI-6C controller.

For instance, the DMX framework now includes a small animation engine that, based on the time signature and the tempo assigned by the user, will ensure that every single animation is correctly timed and executed during the timespan of one or multiple time units (4/4 bars usually, but odd signatures are supported as well).

I tried to keep everything as modular as possible: the workspace can be assembled by the user by adding "modules". Each module will drive one or more DMX channels and will expose a graphical interface especially tailored to the type of appliance that is connected to its channels. At the moment I have only a couple of pretty simple slider-based modules (good enough for the dimmer I currently use), but in the future I'd also like to add modules for lights such as blinders or strobe lights, as soon as I buy them...  :)

Current interface.

The picture above is the current main interface: it's not very pretty, but these are my first steps both with WPF and with DMX...  :)

Anyway, since everything works (more or less), I collected 4 lamps I found lying around at home and plugged them in. Then I fired up "Fear of a Blank Planet" by Porcupine Tree and experimented a bit with the basic animations I built in (the usual cosine and sine functions, plus some others). Some excerpts of my masterpiece:


Video on Vimeo.

I hope I'll have time to improve the application a bit during the next weeks (I found out several weak spots while recording the video above): stay tuned for the next video and, eventually, for some technical posts about WPF.

Posted on Thursday, November 27, 2008
351 Views
3 comments posted

Setup: notebook, DMX controller, DMX dimmer and lamp. My adventures with the DMX Lightshow go on.  :)
After successfully installing and setting up the SIUDI-6C DMX controller I ordered a DMX dimmer on the german Pro Lighting internet shop.

The package was delivered today:
it's a nice Eurolite "EDX-4" 4-channel dimmer, that is, a piece of hardware that has four standard power sockets and can adjust the power output on each of them, on a more or less linear scale from 0 to 100%. An arbitrary number of lights can be connected to each socket (without exceeding the unit's total power limit of course): the beauty of it is that since it uses standard Shuko sockets you can connect almost everything to it (even my old and dusty bedside lamp).

The Eurolite EDX-4 unit.

I didn't expect it to be so big. My hand is on the picture for scale reference purposes.  :D

This evening I decided to give the dimmer unit a try and wrote a little .NET managed library that wraps the programming interface included in the SIUDI-6C SDK by Sunlite. Then I quickly threw together a very ugly interface that enables to interactively set the output value on a single DMX channel, hooked the dimmer on the DMX controller, switched the power on and... lo' and behold, it works!  :D


Video hosted by Vimeo.

Ok, the hardware part would be ready... now it's time to get working on the software! I think I'll try to build something using WPF, which is a fairly new technology to me and seems to have a lot of interesting additions in .NET 3.5 SP1. We'll see.  :)

Posted on Thursday, November 20, 2008
921 Views
1 comments posted

Today I'm starting another new exciting pet-project of mine!  :) I'm planning to buy some DMX hardware (DMX is a simple protocol to control lighting shows and such) and build a custom piece of software, that I could then use on live shows to give life to the gig with rhythmic lighting, effects and whatnot.

The most immediate use for it would by on gigs of my brother's band, Spasmodicamente. That would be totally awesome.  :D

So, for starts, I went looking for a cheap DMX controller that can be used interactively by a computer. There are several solutions by different companies, but the most convincing seemed to be those made by Nicolaudie-Sunlite. Different models exist, some of them are pretty expensive but they also include much stuff I don't really need. Fortunately, Sunlite also sells simple kits that come with a software development kit to program the thing.

Unboxing

Two days ago I ordered one SIUDI-6C (the cheapest model, since I wasn't completely sure it was going to work). It cost 100 € plus 25 € for shipping and it was one of the quickest deliveries I ever witnessed in my life! This morning at 10 o'clock it arrived safely in my hands (that's roughly a single day from France to central Italy). Thank you Sunlite!  :)

The unwrapped box.

The nice cardboard box is definitely overkill for the three items contained in it:

Contents of the box.

The little blue plastic box is the SIUDI-6C DMX controller. The disc contains a collection of software (most of which I won't use anyway), the SDK and some documentation (it's not MSDN, but it will do). A standard printer usb cable is also in the box.

Installing

As soon as I plugged the controller in the usb slot, Vista went searching for drivers on Windows Update for almost ten minutes. Without success.  :) Anyway, all drivers are on the CD (and on the website as well).

Just make sure you don't install the drivers in the /drivers folder, but directly install the SDK in /siudi/siudi5-6_developerkit.exe. The first set of drivers cannot be installed (on Vista) because of some error in the INF file. After some hacking around in the file I managed to get them installed (and thought all was well) but the example programs did not work: "no DMX interface installed". Duh.

Then I exumed my old XP disc, installed it on the former Linux partition (won't need that for this project, that's for sure) and tried again: same story. Those drivers simply do not work. I was almost about to send a mail to Sunlite, but I tried the (slighty smaller) driver pack included with the SDK and that did the trick!  :)
Now the little fellow is blinking like mad and responds to some basic DMX command.

The SIUDI-6C DMX Controller

So, now I'm ready to do some nice stuff with my new gadget! I ordered some other hardware that can be controlled via DMX today (a DMX dimmer), therefore I will probably have something working by the end of the next week.

Posted on Friday, November 14, 2008
1073 Views
1 comments posted

This evening I pulled together the last updates to my side project OnTopReplica and published it under version 2.1.

The update contains two nice features: first of all you can now adjust the opacity of the window by turning the mouse wheel. This also makes possible to set the opacity in finer increments than through the default menu.

Additionally, the fullscreen mode has been completely overhauled and now adapts much more nicely to the screen (in fact it now leaves the taskbar free and doesn't cover potential notifications). There's also a new click-through mode (you can enable it in the "resize" menu and by setting the window opacity to non-opaque) which transforms the default fullscreen mode into an "overlay" mode: the window will sit in the foreground as usual, but you will be able to click on every window underneath. Very cool to watch movies in full resolution!  ;)

Hope you like it! Download it here.

Posted on Monday, November 10, 2008
309 Views
0 comments posted

Stopwatch - from Geekpedia.com I just published my new small project "MotoX Stopwatch" on the website: it's basically a simple stopwatch that allows you to keep track of times and laps for multiple people.

It's also my first program written with the Cobra language and released under the "Do What The Fuck You Want" public license (I always wanted to use it  :D)!

Posted on Monday, November 10, 2008
Tagged as
252 Views
1 comments posted

I'm back from a couple of exams at Unive and spent a couple of days working on my little side project "OnTopReplica". After some code refactoring, some neat additions and a completely rewritten (and definitely more usable) region selector, I ended up with what I think could be worthy of a major release: 2.0!

By the way, OnTopReplica has been recently featured on Softpedia, therefore I'll have a larger audience to satisfy now... (that is, larger than "my brother and I").  :D

Please check it out if you haven't already and let me know! Source code is available as always on CodePlex.com and it's definitely less messy this time.

Posted on Monday, September 15, 2008
345 Views
0 comments posted

Today I released an incremental update of OnTopReplica (reaching version number 1.3.1). No radical feature changes this time, just some fixes and improvements to how thumbnails are resized, how regions are defined and handled, and so on. Hope you enjoy it.  :)

As usual, source code and binaries are released on the CodePlex project page.

Posted on Monday, April 14, 2008
305 Views
0 comments posted

It's time for a couple of updates to my side projects I enjoy to spend my free time with.

First of all, I finally posted a page about the Vista Controls for .NET 2.0 (update: later renamed to "WindowsFormsAero") library I started contributing code to in November 2007. The library has now reached version 1.3 and includes many of Vista's exclusive features for managed .NET applications. Check it out!  ;)

OnTopReplica too has reached version 1.3 and has undergone a lot of changes (better resizing, better error handling, more features...).

Posted on Thursday, February 28, 2008
Tagged as
270 Views
0 comments posted

Busy week! Exams are approaching and I keep working on my useless side-projects when I should be studying...  :|

Anyway, I found the time to update my pet project "OnTopReplica". You can download it directly from this site (it should update itself automatically). Enjoy!

And by the way, I learned some really interesting stuff about application settings and XML serialization: I'll post it soon.

Posted on Monday, January 21, 2008
282 Views
0 comments posted
Back to Klopfenstein.net
Clemens Klopfenstein Serena Kiefer Lukas Tiberio Klopfenstein Lorenz Cuno Klopfenstein
English German