10 days ago •
I got big news: I won a competition with University of Rome Sapienza, which I attended, and now I'm bringing this project to Maker Faire in Rome from October 3rd to 5th!
That's why I'm actively working on Revision 2 of this project! In fact, I just printed the first working PCB of the FSR matrix! See it here below in all of its glory and copperness!
Unfortunately I'm encountering issues with drilling holes in PCBs, mainly because it's my first time handling a Dremel and secondly because I do not have a drill press (which I will buy in the next days), therefore I managed to make two holes in a test PCB and breaking 2 drill bits, the 1mm and 0.6 mm ones, so I couldn't drill this one and I could not test it :(
But I assure you that the pads are fully functional; in fact, the test PCB I drilled was an FSR etching test, I tried that with velostat under a pad and it works perfectly! Here's the test FSR:
You can see cables coming out under the PCB soldered to each side of the FSR.
Another issue I encountered while testing that FSR is that there is no way to glue Velostat under the rubber pads; that stuff is unglueable! But I tought of a workaround: I will use an acetate sheet to which I'll glue 16 Velostat circles, and I will cut a windowed acetate sheet (sort of a frame) that will leave some air between the Velostat circles and the FSRs; these two sheets will be put between the pads and the PCB.
Last thing, I still need to design an enclosure for everything; it will have room for the PCB and a base for it, a Teensy 3.x and Teensy Audio Board (for future upgrades), and a motherboard which will host the Teensy and which will have 3 connectors; one will be connected to the FSR board, the other 2 will be free to use with a similar configuration, that is to host a 16 channel multiplexer; this will leave up to 32 addressable analog inputs!
So, stay tuned!
a month ago •
The used Akai MPC 2000 pads arrived this morning, yay!
I took the opportunity to share with you actual dimensions of the pads, as well as some photos of the inner guts of this prototype; let's start with the description of the electronics photos:
This is the mux breakout board connector; beside the blue wires mess, which is composed of the FSRs leads, you can see in order from left to right, and color coded:
Vss (ground)- Vdd (5 V) - A - B - C - D - Common Out - Inhibit
This board is plugged in a breadboard and connected to the Teensy using some jumpers:
You can see that apart from the red jumper for the ground connection, everything follows the same color coding as on the breakout board:
RED for Power - YELLOW for A-B-C-D - GREEN for Common Out - WHITE for Inhibit
A-B-C-D are connected to pins 9-10-11-12, Inhibit to pin 8, Common Out to A0-pin 14 and grounded through a 10 Kohm resistor. You can see that the electronics and the connections are really straightforward.
Now for the dimensions:
- Top layer:
. Pad width : 1,1875 inches
. Spacer between pads : 0,1875 inches
These could be approximated to 1,25 inches and 0.125 inches and will be useful later when designing the final enclosure (e.g. to cut an acrylic sheet with some holes to be put on top of the pads to keep them together with the structure, which will also make the thing look sleek ;D )
- Bottom layer:
. Pad width : 1,25 inches
. Spacer between pads : 0,25 inches
. "Pressure" circle diameter : 1 inches
For "pressure" circle I mean the little convex circles under each pad, which will be covered with Velostat;
The width and the spacer reflects the approximated top pad dimensions; these are necessary to design the PCB pads.
I made some math, and the first thing that comes out is that I cannot fit 16 pads in a single PCB, at least not in Eagle CAD; the maximum available area in the free version is 100 mm * 80 mm ( 4 inches * 3,2 inches ), therefore I have to either stick with 4 boards with 2x2 pads each ( 3 * 3 inches ), or design these with another tool.
You can find more pictures in the Google Drive shared project folder link.
See you next time with the PCB layout of the pads, and who knows what else!
a month ago •
Today I had the time to sit down a few minutes on the project and I got the first revision of the code finally available, after more than two months have passed since I did it.
Code available here: https://drive.google.com/folderview?id=0B-yo2xApQsSeMm5RcHg0V0JJQmM&usp=sharing
Soon it will also be available on GitHub
How to use it:
-Take your Teensy and program it
-As soon as the code starts (e.g. you see the Teensy MIDI device connected to the PC) keep the first button pressed down for at least 5 seconds; this is used to initialize the maximum value that the analog pin can read, so to map the analogRead values in the range [0,maximum] instead of [0,1023]
-Leave the button and enjoy! Notes are mapped from note 36 to note 36+i where i is the index of the pad which goes from 0 to 15. I chose this notes because every digital drum inside Reason (Redrum, Kong) as well as sample players (Dr.Rex) are mapped to default to this range of notes.
You may want to keep your Serial Monitor opened in another window while using it as it shows some messages in the initialization process as well as during normal use and misuse.
Anyway, the rubber pads have not arrived yet, they should arrive tomorrow; as soon as I have them I will lay down a PCB according to their dimensions and I will also design a little wooden chassis to keep everything together.
As always, stay tuned!