Forum rss-feed

Forum

Software: Replicating alpha keyboard layout on pico

Most Recent

written by: Bjoern

Update for EigenD 2.0 here: Keys for Courses

written by: Bjoern

Tue, 6 Dec 2011 20:37:11 +0000 GMT

Is it possible to create an alpha/tau-like keyboard setup on the pico?

The only keyboard layout scripts (e.g. from Factory Scripts folder) seem to let you only assign each note to one key. The alpha/tau-keyboard would need to let you double up keys, i.e. have two different keys for the same note.

Many thanks!
Bjoern


written by: NothanUmber

Tue, 6 Dec 2011 21:04:50 +0000 GMT

No, you can't really replicate the Alpha layout on the Pico because the Alpha has 120 keys while the Pico has 18 :P

You can replicate any "window" into the Alpha layout that you like though.

*edit* Sorry, forget what I wrote: Pico default setup has only one course...
But it is possible: Look at this tutorial how to define your own courses
http://www.eigenlabs.com/wiki/Creating_your_own_key_layouts/
(so you would have to define two courses in kgroup 1)


written by: Bjoern

Tue, 6 Dec 2011 21:07:56 +0000 GMT

Oh! I thought the 102 extra keys were just a software feature. Might have to buy an alpha after all then ;-)

In response to "kgroup 1 hey course 2 offset to 5 semitone set"
I get "inappropriate arguments for the verb set" ...


written by: Bjoern

Tue, 6 Dec 2011 21:09:39 +0000 GMT

Sorry, didn't see your 2nd post!

Many thanks!!

Bjoern


written by: NothanUmber

Tue, 6 Dec 2011 21:15:03 +0000 GMT

It's actually quite easy:
Type:
kgroup 1 listen
k as 1 choose (select all the keys on the left column from up to down, touching the last key twice)
k as 2 choose (now repeat that for the right column)

Now you have defined two courses which you can tune:
course 2 offset to 4 interval set

Now it should behave like a window into the upper left part of an Alpha :)


written by: Bjoern

Tue, 6 Dec 2011 21:56:22 +0000 GMT

That works!

Thanks for your help with this!
Bjoern


written by: Bjoern

Wed, 7 Dec 2011 22:28:58 +0000 GMT

I have been trying to figure out how to do this without "choose", so that I can put it into a script. How would you do that?

Many thanks!
Bjoern


written by: NothanUmber

Wed, 7 Dec 2011 22:54:46 +0000 GMT

Yes, this is possible, you might want to have a look at the fountain of EigenD knowledge no. 1 - the EigenD Reference Wiki ;)

http://www.eigenlabs.com/wiki/1.3/The_EigenD_Reference/
http://www.eigenlabs.com/wiki/1.3/Keygroups/

so the script above would be
kgroup 1 listen
k 1 to k 8 as course 1 add
k 10 to k 17 as course 2 add
course 2 offset to 4 interval set
empty join


written by: Bjoern

Thu, 15 Dec 2011 21:17:33 +0000 GMT

One of the issues with this is that it also alters the way you e.g. select instruments using the mode key. It seems that the instruments aren't tied to a particular key, but to a particular note, or position in a key group perhaps.

Anything that can be done about it? I've posted that question here:
http://www.eigenlabs.com/forum/threads/id/606


written by: NothanUmber

Thu, 15 Dec 2011 23:05:29 +0000 GMT

Yes, there is. You have to define a custom scale in User Scales.txt that leads to the desired key->note mapping without changing the layout. Downside: you have to create a custom variant of all scales because the normal ones are all layed out for layouts with continuous key numbers.

So in order to map from the standard layout
5 6 7 8 13 14 15 16
1 2 3 4 9 10 11 12
to a chromatic two course layout
->
9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8

most probably the scale that you have to copy into your User Scales.txt would look like this (not tested..)

[pico standard to 2 course]
; remaps the Pico standard layout to a chromatic two course layout
intervals= 0 1 2 3 8 9 10 11 4 5 6 7 12 13 14 15

The other possibility would be to remap the kgroup outputs for the menu keys (like Geert did it in his example for his custom Alpha layout). Finding the proper mapping and more important to find the instruments/talkers that have to be remapped in the first place is not trivial though with the current EigenD version, presumably it will become easier when we finally see how the kgroup outputs are mapped in workbench...

Greetings,
NothanUmber


written by: jaself

Fri, 16 Dec 2011 07:12:03 +0000 GMT

@Bjoern,
So far I have not found a way to define courses (at least with kmapper) except as single ranges, such as "k 1 to k 9 as course 1 add", "k 10 to k 18 as course 2 add". Multiple adds per course overwrite.

Changing the order of keys in kgroup 1 (for instance "k 1 to 18 add") does not alter the functionality of the mode keys, it just shifts their position so that, for instance the selector for piano changes from key 12 to 7.

What exactly is kmapper and why is it used on Pico, but not (I think) on Alpha and Tau? It seems to be a reduced functionality kgroup.


written by: Bjoern

Fri, 16 Dec 2011 08:29:14 +0000 GMT

Thanks for posts!

I am not sure what kmapper is. Is it documented in the reference? I can't see it...


written by: NothanUmber

Fri, 16 Dec 2011 08:39:19 +0000 GMT

Afaik the kmapper is not used anymore in newer Pico setups (in favour of the kgroup - with that you can define courses - see above)


written by: jaself

Fri, 16 Dec 2011 21:37:34 +0000 GMT

kmapper 2 appears to be current in standard Pico setup 1.4.8. I found it in example scripts I received from Antonio and in the standard scripts for adjusting Pico layout such as "Ascending 1". I also found it and kmapper 1 in the connections view of the oldBrowser while inspecting the Standard Pico Setup.

Aha, I found a solution - defined 6 short courses in kmapper 2 with offsets like 2 long courses, 2x9 to make the whole 18 keys playable. Using kmapper 2 allows you to preserve the standard mapping of mode keys in kgroup 1. All scales work unmodified.

description
All playing keys - Thanks Antonio
2 courses of 9 keys
preserve position of mode keys
script
empty join
kgroup 1 listen
clear
k 1 to k 4 add
k 10 to k 13 add
k 5 to k 8 add
k 14 to k 17 add
k 9 add
k 18 add

empty join
kmapper 2 listen
clear

k 1 to k 4 as course 1 add
k 9 to k 12 as course 2 add
k 17 to k 17 as course 3 add
k 5 to k 8 as course 4 add
k 13 to k 16 as course 5 add
k 18 to k 18 as course 6 add

course 2 offset to 4 interval set
course 3 offset to 4 interval set
course 4 offset to -4 interval set
course 5 offset to 4 interval set
course 6 offset to 4 interval set

all join
eigenbrowser vertical nudger 1 un connect
eigenbrowser tapper 1 un connect
eigenbrowser vertical nudger 2 un connect


written by: Bjoern

Fri, 16 Dec 2011 21:57:49 +0000 GMT

@NothanUmber It does seem that kmapper is needed - some of my scripts dont work without it, but it's not clear to me what it does.

@jaself Thanks - that works. Basically it leaves the standard key layout in place, but shifts the sections through use of courses, which doesn't affect the mode key actions. Great!

Just in case somebody does know this: I would still like to know how kgroup and kmapper differ :-)


written by: NothanUmber

Sat, 17 Dec 2011 00:15:13 +0000 GMT

You are right, kmapper is still part of current Pico setups (I was mislead because the kmapper is invisible in Stage and does not even exist anymore in EigenD2). From what I understood the main difference between the kgroup and the kmapper approach is that the latter is only mapping the keys (while the talkers, instrument selection etc. are still bound to the kgroup and thus not remapped) while the hierarchical kgroups used in the Alpha/Tau setups also remap all connected talkers etc. That way it's easier to have multiple kgroups on the same keyboard (what is used for the Tau and Alpha setups) but you have to reorganize talkers etc. when you change the layout.
As far as I understood this situation will become better again in EigenD 2 because there you can retrieve the physical (unmapped) key information even behind a cascade of kgroups.


written by: Bjoern

Sat, 17 Dec 2011 10:15:54 +0000 GMT

Thanks, that's useful to know!
Bjoern


written by: Bjoern

Thu, 17 May 2012 10:19:40 +0100 BST

Update for EigenD 2.0 here: Keys for Courses



Please log in to join the discussions