Picture of Laser Cut Record
laser copy.png
wood record 1.png
wood record2.png
paper record 1.png
paper record 2.png

A few months back, I wrote about how I used a 3D printer to transform any mp3 into a physical record.  Though all the documentation for that project is available here, and the 3D models could potentially be printed through an online fabrication service, I knew that the barrier to entry for normal people interested in trying out the process themselves was prohibitively high.  With this project I wanted to try to extend the idea of digitally fabricated records to use relatively common and affordable machines and materials so that (hopefully) more people can participate, experiment, and actually use all this documentation I've been writing.

These records were cut on an Epilog 120 Watt Legend EXT to a theoretical precision of 1200dpi (the kerf of the cut and some tricks I used to avoid crashing the laser cutter dropped the actual precision down by ~1/6).  The audio on the records has a bit depth between 4-5 (typical mp3 audio is 16 bit) and a sampling rate up to about 4.5kHz (mp3 is 44.1kHz).  So far I've successfully cut audio on wood (figs 1-2), acrylic (figs 3-4), and paper (figs 5-6), and I'm sure there are many more materials that would work.  I wrote the Processing sketch that generates the record cutting paths so that it can be modified for any song, material, cutting machine, record size, and turntable speed (skip ahead to download the code and learn how to make your own records).

You should also note that in this Instructable I'll demonstrate specifically how I used a laser cutter for this process, but the cutting files I'm using are standard vector graphics in a PDF format, so they can be extended to many other digital fabrication tools. For example, I'm curious to see if it's possible to use a CNC mill or a CNC razor blade paper cutter with my cutting files (a group of people were able to cut out some sine waves on paper using a Cameo in this Instructable).

Below are some of my final results, read on to see how they were made and how you can make your own.

Joy Division - Love Will Tear Us Apart on clear acrylic (download vector files):

Radiohead - Idioteque on wood (download vector files):

The Velvet Underground and Nico - Femme Fatale on maple (download vector files):

Remove these adsRemove these ads by Signing Up
1-40 of 191Next »

Hi all. I'm a D&T teacher, and wanted to try this to demo to my students.

After completing the record, has anyone tried using different styli- Given that the grooves are larger than LP grooves, I was wondering if certain types of stylus i.e. those for 78's might maximise tracking and sound quality, as opposed to an LP stylus.

any thoughts appreciated

my4pop13 days ago

Very nice liked. I hope you the further development.

Going to check this on personal record.

Great design, just proves that music can be made on anything


bizsai21 days ago

This one was far better than other tut Thanks to writer.

waxpress24 days ago

The audio quality of some of these actually seems quite listenable, except for the constant background noise -- any thoughts on what would be involved in decreasing the amount of noise? It seems like this might be improved even without increasing bit depth/sampling rate.

waxpress29 days ago

I'm wondering whether you think the quality could be improved with this machine, which is listed as 4000 steps per inch (or 32000 with an upgrade), compared to 1200 with the laser you used.

Is that the main factor that would be involved in improving quality? What other factors would you consider?

interesting, i've got some wood in the back here............oh no its the wrong type.

I am confused on step 10 what do I rename in processing?

the name of your song, the text file to import.

Jrisby4 months ago
Hey there. I Have recently tried this and it had cut 3/4 of the grooves then preceded to cut the inner and outer circles. Do you know why it might be stoping?
amandaghassaei (author)  Jrisby1 month ago

you'll probably have to split it up into a few files and send them one by one without moving the material in between cuts. There's a variable called numGroovesPerFile (or something similar) download the latest code from github and try lowering that number.

george.titsworth made it!3 months ago

Thanks for the instructable! This is going to make a really nice Christmas gift!

I did mine on a mini-helix. The current record does not play very well.. lots of noise, a little skipping, but you can make out the tune and it looks great. I'm going to ply around a little more with it when I can to try to clean up the sound.


just saw this, so cool! Do you have a video? what song is it?

Not a bad idea, not sure it'll replace my ipod though :)

spenhoo11 months ago

I'm getting this error, not sure what to do about it. Any suggestions?

Traceback (most recent call last):

File "/Users/....(directory)........../", line 21, in <module>

frameInt = map(ord, list(frame))#turn into array


Is it just that my file is too big to do this way?

amandaghassaei (author)  spenhoo11 months ago

haven't seen that one before. how many min is your song?

It's 30 minutes - I know that exceeds vinyl limit I think for one side
But maybe I'll try it again.. Could've been a glitch in my process...
stoney3k spenhoo2 months ago

If it exceeds the vinyl limit it means the groove pitch is too narrow and cuts will overlap. That may cause the error.

amandaghassaei (author)  spenhoo11 months ago

Try 5-6 min and see if that works.

KonradC17 months ago

Nice proof of concept but falls far from being listenable. Now I don't know much about laser etching a record but I used to be a lathe operator for the cutting of vinyl records back in the 90's. There are a few things you haven't taken into account it seems. the lower rotational speed of the inner groves is the reason the sound degrades so much near the end of a song. It happens on regular records as well but it's not as noticeable. It looks like your grooves are too wide as well...

Best of luck with this!

stoney3k KonradC12 months ago

I guess you could get a lot better quality if you modified the laser cutter to accept a turntable and cut along the axis of the record in a tangential tracking manner. After all, that's how *actual* masters are cut.

soulomon3 months ago

Someone should hack a DVD-R firmware to print 4.7" flexi discs!
Thank you for your amazing work Amanda.

stoney3k soulomon2 months ago

You know, that *could* work if you have a LightScribe or LabelFlash burner and compatible discs.

Peter Mikulik2 months ago

Hello Amanda,

I am so blown away by this work. I would rather like a copy of a record of the Beach Boys Pet Sounds album on this wooden record. How much would you charge to make one of these for me? At your convenience. How much ? even the Velvet Underground would be cool too. Please let me know I would really appreciate it. I am not so technical so I could not do it myself. Please let me know if you would be able to do for a charge :) Thank you, Peter and you can contact me best at Thank you again in dance :)

Hi, When I go to open the Python wavtotext file it flashes up for a second then disappears, do you know why this would happen?

I had this problem to so I had to open python idle

amandaghassaei (author)  jamesburkill11 months ago

did you figure it out? what version of python are you using?

soulomon3 months ago

Someone should hack a DVD-R firmware to print 4.7" flexi discs!
Thank you for your amazing work Amanda.

davidbarcomb3 months ago

Great project, I must try this

hey i thought i sent a message already but i cant find it!
I'm having trouble when i get to the cutting stage, it seems to just skip some (most) of the files? it seems to not recognise that there's any data being sent. is this just because the files are too big?

yeah I've seen that to. are you using illustrator to send files into the laser? The workaround is to grab the latest code and decrease the variable numGroovesPerFile until you can import each file without losing info. Or if you open the files in adobe reader and "print" from there it should work, but you won't be able to edit/move anything.

CasualTuxedos6 months ago

Do you need a 120 watt, 1200 dpi laser? What is the minimum laser requirement?

amandaghassaei (author)  CasualTuxedos6 months ago

the wattage doesn't matter - as long as you can cut through the material. You will have to play around with the settings to get the groove etching just right. I wasn't really taking full advantage of the 1200 dpi because the kerf of the laser is so wide, I'm sure it would work with something less than 1200, but I haven't tried.

Hi, thanks. Does it have to cut THROUGH the material? Does engraving not work?

amandaghassaei (author)  CasualTuxedos4 months ago

you'll want to cut through for the profile of the disc and the center hole.

peigan7 months ago

im getting an error on python:

Traceback (most recent call last):

File "/Users/eidtecnico/Downloads/LASER RECORDS/LaserCutRecord-master/LaserCutRecord/", line 26, in <module>

frameOneChannel[i] = frameInt[4*i+1]*2**8+frameInt[4*i]#separate channels and store one channel in new list

TypeError: 'map' object is not subscriptable


amandaghassaei (author)  peigan7 months ago

did you put the audio file in the same folder as the python script?

Hello! I'm also getting the same problem when I run the file in Python 3.4.1. When I run the file in Python 2.7.8 it says

Traceback (most recent call last):

File "/Users/flaviawilson/Desktop/UNIVERSITY/CCDN244 Expanded Photographics/Project Two - Lomo/LaserCutRecord-master/", line 26, in <module>

frameOneChannel[i] = frameInt[4*i+1]*2**8+frameInt[4*i]#separate channels and store one channel in new list

IndexError: list index out of range

Do you have any ideas? The audio file is definitely in the same folder as the python script. Sorry to be a bother, I'm new to python but super excited about this instructable! You've done an awesome job, thanks so much :)

1-40 of 191Next »