First off we want to credit JDeboi for the amazing idea and code, we decided to build upon her project and create our own instructable. Here is her repository: https://github.com/jdeboi/monome and instructable: https://www.instructables.com/id/MaKey-MaKey-Monome/
The goal of this project is to first, create a simple eight by eight matrix board. Each cell of the matrix will contain 1 RGB LED and a sound associated with the row that it features on. Then, when we have the RGB LED matrix set up, we will attempt to make the cells reactive to touch so that when a user touches a cell the LED will turn on. Once we have the board reactive to touch and are able to log all of the user interactions, then we will start implementing sound for each cell. The overall vision is to make each row of the matrix contain a different sound. Then, when a user has created a pattern from the LED Matrix, it will loop through from left to right playing the sounds from the cells that the user has touched.
- Makey Makey
- capacitor - 1000 µF
- 19 alligator clips
- 64 Neopixels
- copper tape (single-sided conductive) - 30m
- stranded 22 gauge wire
- 300 to 500 Ω resistor
- 22 square inch acrylic - semi transparent foam core
Step 1: Step 1: LED Strip
Step 1: LED strip
You will need 64 addressable LEDs (ws2812b) for this portion.
- First cut each LED from the strip so you have 64 individual LEDs. Be sure to make each cut where it is marked.
- Then, put solder on each of the copper pads (ground, 5v, data) to make it easier to solder the LEDs together.
- Now cut out 3 different wire colors 2 inches each (You will need a lot of these to connect the singular LEDs together).
- After that, solder each Neopixel together forming 8 strips of 8 LEDs each (5v -> 5v, GND -> GND, Data Out -> Data In). When you have the 8 strips, solder them all together in a snake like pattern. This will allow you to now have the 8 x 8 matrix. (Space the 8 strips approximately 2.5 inches of each other)
After you have all the strips, you now need to tape or hot glue them down to the bottom of your housing (described in step 4) so that they match up with the foamcore grid (step 2).
Note: Be sure to get the NON-waterproof version, we got the waterproofed version and had to cut the silicone housing the LED strip to expose the copper connectors for each strip. It will be much easier if you just get a non waterproofed led strip which will allow you to avoid this extra step of exposing the copper. Oh my god, you have written quite a lot already.
Step 2: Step 2: Foamcore Grid
This part is to make each LED have their own cell and provide the overall structure for the board.
- For this part you can either laser cut the foam core (probably the easiest solution) or cut it out by hand.
- After you have all the pieces, they should fit together fairly easily, and again you can either tape them together or hot glue them.
- As a sanity check, grab the LEDs that are attached to the bottom of the box and test them to see that there is exactly one LED in each part of the matrix.
If you wish to laser cut it, download the following svg file. If not then just follow the schematic shown in the picture (from JDeboi here).
Step 3: Step 3: Touch Screen
This part was particularly challenging to figure out for us because we needed to control 64 separate cells, but the makey makey does not have this many inputs. Therefore the solution was to track each row and column through the copper tape. Where each row and column has its own alligator clip. So when you touch both a row and a column then you will ground that row and column thus giving us the 64 different inputs we need by just using 16 inputs.
- Cut a 24 x 24 piece of opaque acrylic, this will be the base for the touch screen.
- Place it on top of the foam core grid, it should be a pretty snug fit so you won’t need to tape it or glue it down if you do not want to.
- Lay down the columns for the grid with copper tape. To make it easier, line it up with the foam core grid.
- Now for each intersection (where a column will cross with a row) put a clear piece of tape so that when they touch it won’t be conductive.
- Now lay the rows.
- Buttons! For the buttons make a diagonal, one piece of tape touching the row and the other touching the column.Make sure these diagonals do not touch
- Now when all the copper tape work is done, attach alligator clips to each copper tape row and column and connect it back to the makey makey.
- Finally, you need one last alligator clip or grounding wristband to connect yourself to ground. You must be touching this alligator clip for you to use it.
Step 4: Step 4: Housing
Making the box was fairly simple, we used this site called makercase
- The dimensions we used are 26.5 x 26.5 with a height of 3 inches.
- We also made a rounded square cut on the top of the box with dimensions of 22 x 22 inches.
- When you are happy with your changes on makercase, just generate your laser cutting plans and then download the plans as needed for your laser cutter.
Or if you are lazy, you can opt to just use our svg file here. Note: we had to do this in 3 separate cuts, 1 for the sides, 1 for the top half and 1 for the bottom half of the top. This is because our laser cutter was not big enough to cut 26 x 26 so we had to improvise and cut the case in half and laser cut each half separately.
Step 5: Step 5: the Code
All the code can be found on my Github, taken from JDeboi.
- For this to work you will need to install the Makey Makey addon
- And then after that you will need the Neopixel Library that is in charge of controlling the LEDs.
- Then upload the arduino code to the board
- And startup the processing sketch and everything should now be working!
Credit to JDeboi for the code and idea and here is her repository: https://github.com/jdeboi/monome
And link to her instructable: https://www.instructables.com/id/MaKey-MaKey-Monome/