As soon as [pashiran] laid eyes on his first hand-cranked music box, he knew he was in love. Then, he started punching the holes for his first ditty. As the repetitive stress of punching heated up his arm, his love cooled a bit. Annealed by the ups and downs of this experience, he decided to design a machine that can punch the holes automatically.
Soon, [pashiran] found his people — a community of music boxers that transform MIDI files to DXF format, which creates coordinates for CAD software. In [pashiran]’s music puncher, an Arduino MEGA takes a DXF file and bubble-sorts the jumble of x-coordinates. The MEGA conducts a trio of two stepper motors and DC motor. One stepper pushes the paper through on the x-axis, and the other moves the puncher head back and forth across the paper scroll as the y-axis. The DC motor moves the punch up and down.
Now, paired with [Martin] of [Wintergatan]’s method for chaining music box paper together, [pashiran] can write a prog-rock-length opus without fear of repetitive stress injury. And since he’s published the STL and INO files, now you can, too. Watch it punch and play 250 notes worth of “See My Vest” “Be Our Guest” after the break.
There’s more than one way to avoid manually punching all those holes. When [Wintergatan] was wrestling this problem, he inspired the hacker community to create a MIDI-to-laser-cut-stencil solution.
He should make one that prints Buffalo standard piano rolls. Gotta admit it’s catchy.
65 note rolls would be possible too, just overlap punching with different code. Watch out for the infamous “dangling chads” it could throw your melody off.
ya where be the player piano version? nice work. next need to punch some metal in both slotter and bumpers.
Nicely done. This DiY project is unique enough that the “should have bought it” trolls won’t be able to spoil his efforts.
nice work, but stick a motor on that hand crank next time
Interesting and it works well. Since the camera unfortunately does not move/pan/zoom to show you the mechanism from different angles as it’s punching, you can skip from 1:20 to 5:20 without missing too much.
A sorting algorithm that first finds the circles closed to the start of the paper would be nice. The rest of the sorting could then be done while punching, with possibly pausing the punching when the sorting can’t keep up.
Love the musical nod to Mario when the printer is all done.
Please don’t use bubble sort.
Even a selection sort would be better, because then you could start punching ASAP, and the rest doesn’t really matter as long as it keeps up with punching.
This is interesting, and an interesting trade off between mechanical complexity and inexpensiveness. If I were to try this, and watching this work is inspiring, I would look for a bunch of low cost solenoids and punch an entire row at a time. It seems to me the mechanics, even if you had to have some of the solenoids offset that this would be a lot simpler and a lot faster. In fact it should be almost near as fast as the music box which would allow you to take the punched paper coming out of the puncher and right into the music box, playing it in real time.
Very cool to watch it work.