Forum rss-feed

Forum

Developers: Keys for Courses - Keyboard layouts in EigenD 2.0 with Belcanto

Most Recent

written by: Bjoern

Hi carvingCode,

do you have a belcanto example, that sets up two keygroups on a pico?

Thanks,
Bjoern

written by: Bjoern

Tue, 15 May 2012 19:12:58 +0100 BST

Hi all,

how do you use Belcanto "add" to do keyboard layouts in EigenD 2.0 ?

http://www.eigenlabs.com/wiki/2.0/Keygroups/
only gives this example


course X key Y to course X key Y add


Here's the background: In 1.4, I was able to do this:

empty join
kgroup 1 listen
clear
k 1 to k 4 add
...

which has now become

empty join
main keygroup listen
musical clear

but then "k 1 to k 4 add" doesn't work (as expected, because "k" is now "key"). However, the following also don't work:

key 1 add
key 1 to key 4 as course 1 add
course 1 key 1 add
course 1 key 1 to course 1 key 1 add
course 1 key 1 to course 1 key 4 add


It would be really helpful if somebody could explain!

Unfortunately the factory scripts haven't been updated yet, so peeking at those doesn't help either.


written by: geert

Wed, 16 May 2012 08:15:15 +0100 BST

Hi Bjoern,

You don't specify ranges of keys anymore that will be automatically mapped. In EigenD 1.4 the mapping was hidden from you and done behind the scenes, creating a lot less flexibility and mixing up the physical and the musical mapping.

In EigenD 2 you simply specify which incoming key is mapped to which outgoing key. Only keys that are mapped are considered being part of the keygroup. If you want to map four keys through Belcanto, they you specify the mapping for each key and keep it identical if you don't want to change it. In your case, this would be:

course 1 key 1 to course 1 key 1 add

course 1 key 2 to course 1 key 2 add
course 1 key 3 to course 1 key 3 add
course 1 key 4 to course 1 key 4 add


It's much easier to set this up in Workbench though, as you can directly edit a mapping string there, which in this case would be:


[ [[1,1],[1,1]] , [[1,2],[1,2]] , [[1,3],[1,3]] , [[1,4],[1,4]] ]

Note that since the musical and the physical mapping are now totally separate, you need to set up the physical keys also if you want everything to work transparently. The keygroup choose mode was created to make this very intuitive and both the physical and musical key positions that you select visually will be added to the keygroup. Workbench provides you with a handy one-click UI to enter and leave choose mode for specific courses.

Best regards,

Geert


written by: Bjoern

Wed, 16 May 2012 09:29:21 +0100 BST

Hi Geert,

many thanks for that!

This sentence is intriguing: "In EigenD 2 you simply specify which incoming key is mapped to which outgoing key."

What does "outgoing key" mean?

THANKS!
Bjoern


written by: geert

Wed, 16 May 2012 09:46:34 +0100 BST

Hi Bjoern,

That sentence summarizes the mapping function of a keygroup. When a key output is connected to the key input of a keygroup, the data is sent back out again through the active keygroup outputs. The mapping specifies how the input is transformed before it's sent to the outputs, and vice-versa for the light information.

HTH,

Geert


written by: Bjoern

Wed, 16 May 2012 10:14:30 +0100 BST

Hi Geert,

I've now tried this:


empty join
main keygroup listen
musical clear
physical clear

course 1 key 1 to course 1 key 1 add
course 1 key 2 to course 1 key 2 add
course 1 key 3 to course 1 key 3 add
course 1 key 4 to course 1 key 4 add

course 1 key 5 to course 1 key 10 add
course 1 key 6 to course 1 key 11 add
course 1 key 7 to course 1 key 12 add
course 1 key 8 to course 1 key 13 add

course 1 key 9 to course 1 key 5 add
course 1 key 10 to course 1 key 6 add
course 1 key 11 to course 1 key 7 add
course 1 key 12 to course 1 key 8 add

course 1 key 13 to course 1 key 14 add
course 1 key 14 to course 1 key 15 add
course 1 key 15 to course 1 key 16 add
course 1 key 16 to course 1 key 17 add

course 1 key 17 to course 1 key 9 add
course 1 key 18 to course 1 key 18 add


The first part works: It "unassigns" the keyboard, and the keys play "in sequence downwards", i.e. C -> D on the first column of the pico, then E -> F on the 2nd column. (However, it does play: I'd understood that only assigned keys are part of the keygroup from what you said?)

When I add the information about courses, it does not alter the keyboard in any way. I've tried the same with "course 1 key 1 to course 1 key 1 add" all the way through, and that has the same result.

What's wrong?

Thanks,
Bjoern


written by: 0beron

Wed, 16 May 2012 18:50:31 +0100 BST

I think that when the keygroup has a blank mapping, then by default all the keys will play? This just happens to be the same as the mapping you created with the script above.

What key layout are you trying to achieve?

You can also use the choose mode that Geert mentions. He refers to the workbench version, but you can trigger this from belcanto also:


main keygroup listen
key as 1 choose
[choose course 1]
key as 2 choose
[choose course 2]


Where I write [choose course 1] you press the keys you want to be in course 1, one key at a time, then press the last one twice to finish. Repeat for course 2. This is all on the wiki page for keygroups in more detail.

If you don't want any duplicated keys (like on the tau and alpha, or a guitar), then you only need one course.


written by: Bjoern

Wed, 16 May 2012 19:14:46 +0100 BST

Hi 0beron,

The chooser is great, but I guess I then have to save the setup. I.e. there's no way of getting it back out of the system, to use in another setup? For 1.4 I had a set of belcanto scripts so that I could tinker with the layouts, and then replicate them in a variety of setups.

It would be good to have an example with some repeated keys, say the 18 keys set up as they would be on an alpha/tau keyboard (i.e. a layout with two courses), and perhaps how to do the original pico setup. If you just send me just a few hints on how to do a pico and an alpha layout in terms of "course 1 key 1 to course X key Y add" then I can probably figure out the rest.

Bjoern


written by: Bjoern

Wed, 16 May 2012 23:16:45 +0100 BST

Thanks for a Google hangout with 0beron, we now have this problem solved. The issue was that you need to define both a physical and musical keymap, otherwise things go wrong. (Apparently Geert had mentioned something similar in another context.)

I'll post the outcome - link to follow shortly!


written by: Bjoern

Wed, 16 May 2012 23:36:33 +0100 BST

Outcomes of the discussion here, including Belcanto for setting up an Alpha-like keygroup on the pico, as well as the Belcanto for getting the default pico setup (but with 18 playing keys, rather than 16).


written by: Bjoern

Thu, 17 May 2012 10:18:13 +0100 BST

I have another question related to this: How do you define keyboard splits? Is this possible for the pico now?

(Previously there was a question over where the mode keys per split would go, given the limited keys on the pico. But given the flexibility in the assignment now, it would make sense to have two splits consisting of playing keys only, with configuration information passed through the existing four mode keys or in other ways.)


written by: carvingCode

Thu, 17 May 2012 11:09:56 +0100 BST

Splits on Pico can be defined the same way as on Tau and Alpha with keygroup agents.


written by: Bjoern

Thu, 17 May 2012 11:15:15 +0100 BST

Hi carvingCode,

do you have a belcanto example, that sets up two keygroups on a pico?

Thanks,
Bjoern



Please log in to join the discussions