Using KMI's SoftStep Foot Controller
with Linux

picture: http://www.keithmcmillen.com/softstep/photos

Presenter Notes

Nice, compact rig?

Presenter Notes

Well, almost...

Presenter Notes

A possible alternative

picture: http://www.keithmcmillen.com/softstep/photos

Presenter Notes

Small but Powerful

Presenter Notes

System Requirements
(KMI's FAQ)

Presenter Notes

FooCoCo
The Foot Controller Controller
(based on python/pyo)

Presenter Notes

Button press

patch = [
    Press(Button(5), flash(5))
]

Presenter Notes

Press & release

Press(Button(5), [
    led_on(5),
    display('Pres'),
    midi_PC(5, midi_out),
])

Release(Button(5), [
    led_off(5),
    display('Rel'),
    midi_PC(6, midi_out)
])

Presenter Notes

Pressure

Pressure(Button(5), [
        display('P>'),
        midi_CC(7, midi_out),
])

Presenter Notes

Emulate Expression pedal (1 button)

Expression(
    up = Button(5,'tl') + Button(5,'tr'),
    down = Button(5,'bl') + Button(5, 'br'),
    callback= display('Exp')
)

Presenter Notes

Emulate Expression pedal (2 buttons)

Expression(
    up = Button(0),
    down = Button(5),
    callback= [
        display('2>'),
        midi_CC(7, midi_out)
    ]
)

Presenter Notes

On-Off Button

MultiState(
    Button(5),
    [
        [led_on(5, 'red'), display('off')],
        [led_on(5, 'green'), display('on')],
    ],
),

Presenter Notes

MultiState

MultiState(
    next=Button('nav_right'),
    prev=Button('nav_left'),
    states = [[display('PC%2d' % i), midi_PC(i, midi_out)] for i in range(1,11)]
)

Presenter Notes

Planned features

  • OSC
  • Scenes
  • Using two or more SoftSteps on the same computer

and maybe...

  • Long presses
  • GUI (sensor info and/or program)
  • ...

Presenter Notes