Keyboard Controls Update


This week I tried to experiment further with the same push buttons with various heights.

The results were visually and tactile-ly interesting. However, I’m still figuring out how this would serve as a keyboard control.

Next step: play with the buttons and observe my wanted actions, how do different surfaces prompt different actions / expectation of different reactions?

Thoughts on keyboards
*keyboards are essentially a panel with many buttons used for typing or for specific functions to navigate within the laptop.
*non-tactile keyboards expands and contracts based on expected actions

I plan to finish the wiring and fabrication this weekend in order to focus on the programming next week.

Technical learning:

Wiring 16 buttons while wanting them to act as a joystick (remote from the computer) was difficult (hard wires bend and break). I think I found a solution: keep all the multiplexers on the board next to the main board and use soft wires on each individual button pads.



IMG_8817IMG_8818IMG_8872IMG_8853 2IMG_8862 2IMG_8861IMG_8860IMG_8856

Keyboard Controls

The idea is to create a keyboard control for a MAX patch which looks like the control itself but behaves like it has its own internal life.

The fact that it’s a keyboard allows it to switch between modes interaction e.g. setting the playback-rate, metronome rate, samples etc.

The visuals:


The sounds (to be included):

  • rotary encoder
  • missile launch switch
  • arcade button
  • toggle switch
  • various sizes of pushbuttons

Some prototyping to get a feel (this needed to be done for a tangible proof, a regular keyboard DOES NOT feel the same):



(maybe need a multiplexer if I were to do that many buttons?)


I started soldering on a perf board without a proper board layout and failed, not enough space for all wires… also remembering that I will learn how to mill a PCB board later this week 😉




Standing buttons look very good … front-line soldiers / cannons appearance


or mouse?

60 Seconds (Variable Clock)


60 Seconds (Variable Clock) is a project I have been experimenting with for some time. It is to illustrate the subjective nature of our perception of time; “Is time linear?”. This assignment allowed me to turn it into a physical piece.

Remark: I wanted to use real 7-segment displays but given the time and main objective of the project (control > display), I decided to mimic them instead. This was still a challenge as I could not get web sockets to work on Arduino on time. As a result, I used p5 Serial instead.

Materials and components:

  • Long push buttons (thank you Tom)
    Image result for long push buttons
  • Arduino MKR 1010 / USB cable
  • 1/8″ matte black acrylic sheet
  • 4 x standoffs and screws
  • Breadboard / perf board / wires / resistors
  • iPad

Controls: I decided to use 2 push buttons to keep a clean minimal aesthetic. The materials of the buttons are the same as the acrylic used. One button is used to ‘SET’, the other to ‘CHANGE’. The display blinks to indicate which value is being changed (see video below).

System: Push buttons –> Arduino –> p5 Serial –> p5 Sketch (Desktop) –> Socket –> p5 Sketch (iPad)


Code and laser cut files:

Design and prototype:

I designed for the iPad to sit on a stand with its controls to feel like they’re one unit. The tricky part here is how to balance the weight so it is at the center of the stand.



I made a cardboard prototype to get a sense of the size and fit.


Size adjustments were made and the iPad stands quite well.


Testing the controls on the piece

Final look:



Original variable clock:

(note to self to fix  (1) no sound at ‘0’ (2) add special feature ‘set seconds’)

Side note: I definitely got distracted by the display and wish I’d spent more time thinking about the controls. However, as I was looking for buttons for this specific piece, I wanted something minimal – something with a tactile ‘click’ but with no sound, and because I couldn’t find ones that were perfect, I experimented with some silicone buttons + vacuum mold making (thank you Ben).


(out of focus)