The three unit footswitch from China

My new toy has arrived on a fairly fast boat from China. Here are some pictures whilst I go and plant a tree…

It transmits

  1. lower case a (left sw)
  2. Lower case b (Centre switch)
  3. Lower case c (right switch)

Remapped in two minutes once I’d spent twenty minutes booting my laptop up as Windows 10…(should I learn wine…? answer no. usb support is not great…)…cos’ it’s supplied as an .msi on a micro CD . . .
To

  1. R (record)
  2. Shift R (stop record)

You will of course wonder where said recording is…? Well I saw a red circle and it went away when I hit the appropriate switch. So optimism is :smile:

But I can surely do better; get CUIA to do short press record long press stop and win back a whole switch for further misuse…
Back and select perhaps…?

So I have an entirely battery driven rig feeding a Mono or Stereo to an Amp/s.

Virtualiiizee it…

CUIA may be able to be changed to detect key down/ key up events but that will add overhead and only work on these custom devices (because of key repeat on normal keyboards).

I look forward to seeing you performing a jig, operating these pedals :grinning:.

Nice simple solution, little bit noisy in operation. I seem to remember some discussion about input device configuration and it’s probably really something for such an abstraction which might plug into the MIDI mapper world. We’ve tended to offer an open house on event acceptance which is probably pretty sensible in the early stages but it will start to need prioritising and device description ( and abuse) will tend to want to live in some part of our event pipework. Using the MIDI mapper would allow definition of three unit chinese footswitch to be a record/play device, whilst others could choose to pick the three unit chinese footswitch to snapshot up/down/select.

I was impressed by the simplicity of short press/bold press for on-off functionality, and there has been talk of a Bistable component to switch operation. If we declare a point where such process is applied (3UCFS… to snapshot up/down/select just exists as a MIDI filter that fires CUIA at the interface for example, we really don’t have to change too much existing code to accommodate the device).

Good spot on keyboard repeat. I haven’t looked hard enough at the Windows Config programme to decide quite whats it’s capable, and I think I’d prefer to take the ABC from the default config and ignore the PC software completely if at all possible.

One question, obviously motivated by your desire to see the magnificent two left feet performance by yours truly, if you worked 5 of these switches banks into a quasi piano keyboard like layout and bolted them to a board, would the USB start up procedure allocate them consistently to repeatable positions or would the MIDI mapper get a random allocation? Cos that would be the only justification for going into the setup if it isn’t consistent.

OH two left feet two left feet,
How can you dance with two left feet . . . ??

There is a way to ensure that USB devices are enumerated consistently but it involves writing some udev rules. You can detect the device type and which USB port it is plugged into and map that out to a defined device name (or pattern, e.g. foot pedal in hub 1 port 1 might get a suffix 1-1). I am surprised this is not done more often as it is really neat but I guess the majority of users just want their mouse to work like a mouse every time they plug it in. I used the udev rules process to ensure each USB MIDI interface is correctly identified even though they all identify as the same (cheap Chinese devices). It seems a bit of a faff and it would be good to have a tool (web conf?) to allow such mapping to be done without delving deep into udev rules with vim. :slight_smile:

Regarding starting and stopping recording on one pedal, we could add a CUIA to toggle record. Would that suffice? You would need to be sure you knew what state you were in because there is no feedback to the pedal. If that is a desirable feature, add it to the issue tracker - I may even dust off my text editor and implement it during my world tour…

The definition element will be record/toggle Momentary Record ON at startup. & OFF at start up. Depends on the switch polarity in default Momentary Break or Momentary. To make the concept more generic have a declared response for an actual toggle switch, kick on/ kick off… Once the definition is set it shouldn’t actually matter or need to disturb the user they simply press the switch till the red circle appears, or the GPIO LED goes on :slight_smile: