LXConsole works fine with midi and OSC from TouchOsc.
I have started using another program like TouchOsc called Lemur.
Lemur is a little bit more exiting than TouchOsc.
Lemur has no problem sending midi to LXConsole but OSC...I can't make LXConsole and Lemur connect that way.
Questions: Can OSC messages look different, depending on what program they come from or is there a standard?
Can LXConsole also be made to work fully with Lemur?
Regards
LXConsole-OSC-Lemur
OSC is a standard format. TouchOSC is easy because it uses Bonjour to discover and connect to OSC capable devices on the network. I have no idea how Lemur connects.
You can read about how OSC messages are structured here:
http://opensoundcontrol.org/
Regardless of the parameters attached to a message, you should be able to detect the incoming address in the Setup window's OSC tab.
Typically, TouchOSC sends a 1 when a button is pressed and a 0 when a button is released. LXConsole only responds to commands with a non-zero value. Otherwise when you pressed and released a "Go" button, you would go twice, once for the press and once for the release.
Touch OSC sends slider values from 0 to 1.0. A SUB- action converts this to 0 to 100%. If you use this value in a command line, it is 1@%p. You can get at the underlying floating point value using 1@%f instead. So, if your OSC software was sending values of 0.0 to 100.0 instead of 0.0 to 1.0, this would allow the expected result.
You may be able to setup how the Lemur software addresses and what parameters it attaches to OSC messages. This should be a guide.
As far as making a connection, if Lemur does not use Bonjour, you will probably need to supply it with the correct IP address. You set this in the preferences and it should correspond to the IP address for the network connection that you are using. Typically the address starts with 169. if you are using the AirPort as a standalone wireless network. All networks can have various firewalls that block UDP traffic and that can prevent a connection.
You can read about how OSC messages are structured here:
http://opensoundcontrol.org/
Regardless of the parameters attached to a message, you should be able to detect the incoming address in the Setup window's OSC tab.
Typically, TouchOSC sends a 1 when a button is pressed and a 0 when a button is released. LXConsole only responds to commands with a non-zero value. Otherwise when you pressed and released a "Go" button, you would go twice, once for the press and once for the release.
Touch OSC sends slider values from 0 to 1.0. A SUB- action converts this to 0 to 100%. If you use this value in a command line, it is 1@%p. You can get at the underlying floating point value using 1@%f instead. So, if your OSC software was sending values of 0.0 to 100.0 instead of 0.0 to 1.0, this would allow the expected result.
You may be able to setup how the Lemur software addresses and what parameters it attaches to OSC messages. This should be a guide.
As far as making a connection, if Lemur does not use Bonjour, you will probably need to supply it with the correct IP address. You set this in the preferences and it should correspond to the IP address for the network connection that you are using. Typically the address starts with 169. if you are using the AirPort as a standalone wireless network. All networks can have various firewalls that block UDP traffic and that can prevent a connection.
I looked at the Lemur manual. I'm not exactly clear but it appears you may need the Lemur Daemon running on your Mac in order for it to receive OSC from the Lemur app. ( I'm not sure if this is just for the editor/MIDI or not.)
One thing I am sure of is that you'll need to change the OSC Port in LXConsole's preferences from the default 8000 to something other than 8000, 8001, or 8002.
From there the editor's basics seem to be similar to TouchOSC editor's. One thing that is different is that Lemur can talk to multiple OSC devices on different network connections. So, you need to set an OSC target eg. "Osc 0" for a control. "Osc 0" is then mapped in the Lemur App to LXConsole's OSC IP Address and Port number.
Other than that, you can assign custom addresses in the Lemur editor. This makes it possible to have controls that do not need to be setup in LXConsole. The latest builds respond to addresses starting with /cmd.lxconsole/ or /key.lxconsole/ So rather than detecting and assigning an OSC action in the Setup window, you can just assign an address to a button like this, "/cmd.lxconsole/GO" and have that button control the Live window's go. You can look at the TouchOSC remote file included in the LXConsole->Install Extras menu of the latest builds to see how the /key.lxconsole/ address form can be used to create a remote keypad with no setup (except assigning actions to the houselight and worklight buttons.)
One thing I am sure of is that you'll need to change the OSC Port in LXConsole's preferences from the default 8000 to something other than 8000, 8001, or 8002.
From there the editor's basics seem to be similar to TouchOSC editor's. One thing that is different is that Lemur can talk to multiple OSC devices on different network connections. So, you need to set an OSC target eg. "Osc 0" for a control. "Osc 0" is then mapped in the Lemur App to LXConsole's OSC IP Address and Port number.
Other than that, you can assign custom addresses in the Lemur editor. This makes it possible to have controls that do not need to be setup in LXConsole. The latest builds respond to addresses starting with /cmd.lxconsole/ or /key.lxconsole/ So rather than detecting and assigning an OSC action in the Setup window, you can just assign an address to a button like this, "/cmd.lxconsole/GO" and have that button control the Live window's go. You can look at the TouchOSC remote file included in the LXConsole->Install Extras menu of the latest builds to see how the /key.lxconsole/ address form can be used to create a remote keypad with no setup (except assigning actions to the houselight and worklight buttons.)
Lemur OSC to LXConsole - No Joy
I recently discovered Lemur (a pro OSC app for iOS) and love it.
I normally use TouchOSC and it works as expected.
I can't get Lemur to trigger LX. I can see all the OSC packets coming in as expected in Osculator. I can also easily trigger QLAb with it.
I would be glad to purchase Lemur for you because apparently I am in unexplored territory as there are no post besides this one about LX and Lemur.
I wonder if HarryTwoFingers ever got this to work.
Thanks for any help.
I normally use TouchOSC and it works as expected.
I can't get Lemur to trigger LX. I can see all the OSC packets coming in as expected in Osculator. I can also easily trigger QLAb with it.
I would be glad to purchase Lemur for you because apparently I am in unexplored territory as there are no post besides this one about LX and Lemur.
I wonder if HarryTwoFingers ever got this to work.
Thanks for any help.
Mark Nizer
mark@nizer.com
mark@nizer.com
OSC messages do have a standard. The standard contains a "bundle" type message that groups together several regular OSC messages into a single packet. Versions of LXConsole prior to v3.8.1 (today's latest build) did not support OSC bundles. As of v3.8.1, LXConsole will process OSC bundles as if they were a sequence of individual messages.