Proportionate level over 100% ?

LXConsole support and feedback
Post Reply
Johan Söderberg
Posts: 294
Joined: Mon Sep 01, 2008 12:35 pm
Contact:

Proportionate level over 100% ?

Post by Johan Söderberg »

Ive built a toy for our younger audience 3-6 years old, going to a "minidisco".
It's a wii balanceboard connected to Osculator - https://osculator.net/ which in its turn is sending MIDI to LXConsole.

It controls a bunch of submasters with pan/tilt of some moving heads plus some RGB LEDs. Works very well and is quite a fun toy - for me at least.

The problem is that I´m a heavy guy compared to the kids its intended for and even with my 80 kgs I find it impossible to reach all the way to 0 or 100 %.

The Wiiboard seems to be built to handle even heavier loads than me and doesnt send very high numbers if you are too lightweight.
When used with the wiiconsole each user first weighs in and I guess the gaming-console then provides multiplication/division of the values when needed.
Now I need to do something similar.

So I wonder:
What would happen if I patch some of my channels to a proportionate level of 300% or more?

I'll be able to test this in a few days but I'm really curious to know. If it´ impossible to do like that I´ll see instead if it can be solved within osculator somehow.
And .
if that wont work the final plan C is to put a bigger foamsupported plywood on the wii-balanceboard to give the kids some help from mr. Isaac Newton...
admin
Site Admin
Posts: 1643
Joined: Mon Nov 05, 2007 1:26 am
Contact:

Post by admin »

Proportional patch above 100% is not allowed. However, the LXConsole 5 beta adds a new mapping function to OSC actions.

An action command "1@%p" uses an OSC float argument 0.0-1.0 to set the level of channel 1 to 0 to 100 percent.

The new command looks like "1@%m(0,0.75, 0,100). This maps the float argument in the input range 0-0.75 to 0-100%. So, when the OSC argument reaches 0.75, channel 1 is full. Or, if you wanted to effectively have a proportional patch of 300%, you could use "1@%m(0,1,0,300). Output from the mapping function is restricted to legal percentage values 0-100%. So, the second example would reach 100% when the input argument was approx. 0.67.

The beta of LXConsole 5 is a separate link on the LXConsole download page. It is not included in the latest build of LXSeries Pro at this time. The beta contains some large changes to the interface and may not have all functions working properly. So, use it with caution and test well before using it live.
Johan Söderberg
Posts: 294
Joined: Mon Sep 01, 2008 12:35 pm
Contact:

And Negative values?

Post by Johan Söderberg »

That sounds just excellent!

I will try this beta. Since I use bluetooth from the WII.balanceboard I need to have a special computer within ten meters from the board to do only whatever the board is supposed to do. The rest of the house will be lit from another computer running an older version of LXConsole.

This will fix the problems I have reaching 100% on intensity levels I hope.

But if Im to be really picky I think it doesn´t provide a full solution for the pan and tilt. Or maybe it does if I change the inputs... I´ll have to test...

My current patch in Osculator is set to use the sums of four scales in the four corners.
One sum is for pan and another for tilt. That puts my subs for pan and tilt at 50% as soon as I'm connected, which is a good thing. I like that the moving heads go home whenever they are not receiving any other information.

But that means I also have to go from 50% down towards 0% with an increased sensitivity.
So would it work to write the OSC command like: "1@%m(-0,75,0.75, 0,100)?
- with a minus-sign on a value below zero, that is...

I guess this is an unusual and pretty uncommon use of the software, so just dont bother with it if it messes other and more important things up...
The solution I have today with six different MIDI-channels from the Wii-board is a good enough toy as it is :-)
Adding a Wii handcontrol to fire a smokemachine, strobeeffects and some colourchanges will make it more than enough to play with :-)
admin
Site Admin
Posts: 1643
Joined: Mon Nov 05, 2007 1:26 am
Contact:

Post by admin »

Yes, negative values work and allow you flexibility to reverse the direction of the input (as input increases, output decreases).

If you want to specifically determine what will happen, here's how it works. A floating point argument "f" from an OSC message is converted with this function:

Code: Select all


%m(inlo, inhi, outlo, outhi)

g = inhi - inlo;
if ( g != 0 ) {
	f = (f - inlo) / g;
	f = f * (outhi-outlo) + outlo;
	if &#40; f < 0 &#41; &#123;
		f = 0;
	&#125; else if &#40; f > 100 &#41; &#123;
		f = 100;
	&#125;
&#125;
Johan Söderberg
Posts: 294
Joined: Mon Sep 01, 2008 12:35 pm
Contact:

Still havent tested this...

Post by Johan Söderberg »

Ive had christmas and other things disturbing lately so I havent had time to try this WII-board thing yet.
But Ive downloaded the latest build and it looks nice.
It works well as far as I can see with no problems so far.
It connects and runs everything as usual.

Ive noticed that entering and leaving "Scenes" doesnt work just yet and you have left the list with effects outside the main window.

Plus I find it sad that the lists and buttons below dont stretch to get wider when I change the windowsize.

Apart from those little layout oddities it works just fine!
Post Reply