8mm Film Scanner

Scan regular 8 and super 8 film and create a digital copy

Similar projects worth following
When a relative of mine passed, she left behind a lot of 8mm film reels. I figured too many to bring to a copy shop to digitise them. I searched the internet and found several solutions - from ready to use copy machines to dyi projects. However, non of them fulfilled my requirements, but my curiosity was sparked and I thought of making one by myself.
I went already through some iterations of designs to create a reliable, easy to use 8mm film copy machine.
I learned a lot along the process: about the raspberry camera, fusion 360 as a tool to design the parts, easyeda to design a pcb and OpenCV to analyze the pictures taken. All this things where a first for me - and I'm still learning :)

The basic idea is to move the 8mm film frame by frame with a stepper motor and take a picture of it. Afterwards putting the images together to a film.

The frames are quite small (abt 5x4mm) and in order to have a smooth playback of the film, the positioning and cropping of the images is critical. 

After initial tests, I decided to use OpenCV for positioning and cropping. 

While the hardware can deal with regular 8 and super 8, the software is still only supporting super 8. 

First comparisons between a "professional copy" and the built here looks promising, but I believe that especially the camera settings still can be improved a lot.

Here a short video made with the scanner: (original from 1976)

The 3D print:

Originally I printed everything in PLA on my Ultimaker 2+. But after several hours of scanning I realised that the temperature of the stepper gets too high and some parts started deforming.

I printed the parts near the motor with ABS and that works just fine. (the stl files are sorted by material used)


Even that the 0.9 degree stepper usually positions the frames very precise, there are variations especially when glued parts of the film, which are thicker, pass by. 

To ensure that the frames are always positioned in the middle of the cameras focus, I search for the contour on the left side - the sprocket hole in the film.

If that goes out of a certain tolerance, the stepper will readjust the frame.

scanned image

After scanning all the frames, the software goes in another mode - calibration and crop.

A rectangular frame (the green one) is moved to the desired part of the frame. This is necessary because the frame position relative to the sprocket hole is camera specific. 

After checking the right position of the rectangle with some random frames, the cropping is started with the push of a button. The frames are now cut out precisely and once done, they are put together with ffmpeg to a film.

image with calibration rectangle

This project is still ongoing - so what I'm working on:

1) still optimizing the film transportation. V1 works fine, but I want to get to less machine / film contact.

2) Optimize software: The individual parts (scanning, cropping, making the film) work fine independently, but I want to make the workflow in between smooth. (my intention is that it can be operated by anyone)

3) the camera settings: this is the part I still struggle a bit. I need to find the best settings for white balance and exposure. Will post my experiments in the log - any help would be highly appreciated. :)

4) add a post processing feature: Old cameras did not have picture stabilization. I ran one scanned film though the final cut pro stabilization and the result was amazing. But in order for FCP to stabilize, it needs to crop the frame a bit further. So what I plan is to have the choice to crop the frames exact (as now) or a bit wider, so that you don't loose any parts of the frames during post processing with 3rd party software

5) add regular 8 support: The sprocket wheel diameter and the number of sprockets are already optimized, so the film can be transported correctly. Whats missing is the adaptation of the software. (The sprocket holes are in different positions vs super 8). Not a big deal, but only makes sense once point 2 and 3 are done.

film copier gen 7 v10.step

3D files for editing

step - 3.39 MB - 08/17/2021 at 09:23


Zip Archive - 32.44 kB - 10/29/2020 at 05:36


PCB picture (pdf) files

Zip Archive - 60.01 kB - 05/13/2020 at 06:22


Portable Network Graphics (PNG) - 532.58 kB - 09/07/2019 at 16:06


  • 1 × Raspbery pi Model B
  • 1 × Raspberry Pi Camera V2
  • 1 × 3.5 inch 26P SPI TFT LCD Display Screen with Touch Panel 320*480
  • 1 × Mini N20 Micro Speed Gear Motor 6V 60 U/min
  • 1 × Photo Interrupter Sensor Module

View all 25 components

  • Experimenting with the Film Plate

    Anton11/08/2019 at 18:59 0 comments

    Large parts of the visible area of the camera are shielded from the light source through the film plate and the camera mount rail. To compensate for that, I opened small areas of those parts to let light through, to see if the adjustment of the raspberry camera would better adjust the brightness. In my test it did and I'm very pleased with the result. 

    I put the files in the gdrive folder: camera mount rail V2, film plate V3, light box V2

  • autodesk fusion 360 files

    Anton09/06/2019 at 14:17 0 comments

    Since you've asked for:  I've published the fusion 360 link.

    Bear in mind that this is my first project in fusion, so its quite messy :)

    8mm film scanner fusion 360

  • Update of Film Plate

    Anton09/02/2019 at 14:05 0 comments

    I'm currently testing a new film plate, which reduces the direct contact to the film to only the side parts (which do not have parts of the images). In all the tests no film has ever been scratched, but I want to eliminate the risk. 

    The new version brings another challenge: due to lesser friction, the film will not be positioned so tightly, so it can be moved more easily. (eg through the film capture wheel) 

    film plate V1 - the inserted 1mm acrylic light diffuser has direct contact to the film

    film plate V2: the contact of film to the rail is limited to the sides

    V1: Scanning 15000 images showed that the frame has been corrected by the stepper about 500 times - peaking when glued parts of the film got scanned. 

    V1 precision test

View all 3 project logs

  • 1
    Assembling the core

    Beside the printed parts on the picture, you'll need:

    Screws: 2pc M3x20mm, 1pc M3x12mm. 1pc M2x8mm

    Nuts: 5pc M3 Self locking, 1pc M2

    Magnets: 9pc 6x3mm

    Bearings: 6pc 3x8x4mm

    Glue the magnets into the holes of the mount plate as well as the 3 roll axles:

    Important! - Check the polarity: the axle hast to stick to the magnets in the mount plate in the upper and lower position.

    Magnets in Mount plate

    Push the bearings into the rolls: Don't worry to use some force - I use a vise for that.

    Afterwards glue the sides on the 3 larger rolls.

    all bearings in place
    assembled rolls
    using the vise

    Now put the axles through the mount plate and the roll mover (or roll spacer) and push the rolls on it. No need to adjust them yet. 

    Mount the 2 lower rolls with M3x20 screws and the interrupter lever with an M3x12mm screw. The film clearer is mounted with the M2 screw. Add 2 M3 nuts at the bottom of the latch (see picture of the back view)

    Ensure all rolls are running smooth and the upper rolls are locking in the upper and lower positions. 

    The result should look something like this:


    move on the step 2

  • 2
    Assemble the motorized spool holder

    Beside the printed parts as shown, you'll need the geared motor (6V 60U/min) a ball bearing 5x10x4mm a M3x16 screw + nut a magnet 6x3 (not on the photo) and some cable.

    Pull through the cables:

    Solder the geared motor:

    Put the nut in the motor cover:

    Put in the motor:

    Use the M3 screw to mount it to the arm:

    Assemble the spool holder by gluing the printed parts together and push the bearing on - it should sit very tight! Glue in the magnet. Important: You will find 2 very similar parts in your prints for the spool holder, one for each side. Here you use the slightly longer one.

    Push the holder into the arm - also here the bearing should fit very tight.

    Put the spool motor wheel main part onto the motor axle and glue the motor wheel front to the main. (not the axle)

    Assemble the 2nd spool holder and put it into the other spool arm.

  • 3
    Putting together what we've built so far

    You'll need screws: 4 M3x20, 2 M3x10, 4 M3x6mm, 6 self locking nuts M3, 2 M2x6 + nuts, 12 magnets 8x5mm, Photo Interrupter Sensor Module, the stepper motor, 1 Steel Shaft Sleeve 5.05mm, 1 DC Power Jack 5.5 x 2.1mm, 1 Button 12x12mm

    Glue the magnets into the holes:

    Polarity: the Magnets in the 4 magnet holder should stick to the magnets in the cover like that:

    Add a bit of super glue on the outer ends of the holders and put the cover on the back cover box, that way the cover will fit exactly on the box.

    Mount the power jack and the button. I use hot glue for the button. 

    Add the photo interruptor with the 2 M2 screws, the stepper with the 4 M3x6mm screws and mount the plate to the box. The M3x20 screws have to go through the mount plate, the spool arms and the box. 

    Push the sprocket back spacer on the stepper axle, a a few drops of glue onto it (the spacer - not the axle!) and push the sprocket with the shaft sleeve onto the axle.

    The cover should fit nicely and the magnets will hold it in place:

View all 8 instructions

Enjoy this project?



jfoust wrote 15 hours ago point

Instead of all the hassles of sprockets, what about the idea of a friction drive (such as a rubber roller) along the sprocket edge?  I know, purists don't want anything to touch the film.  But claws and teeth depend on film sprockets not being worn or torn.  

Instead of trying to design a reliable mechanical method of precisely aligning film frames to the camera optics, what about a more continuous drive?  Moving the film a known small amount, a fraction of any film frame, taking a pic, and then letting OpenCV find the film frames and glue them back together?  

And this could process optical audio, too.  And a continuous feed would also make it possible to add a magnetic head to handle that kind of audio, too.  Or having a gate that can handle 8mm, 16mm, 35mm?  Or what about controlling the LED backlight brightness and taking several exposures instead of one, and squeezing more HDR depth out of an 8-bit camera?  

All of us here probably have a powerful PC with GPU and plenty of fast storage, so why not do all the post-processing on a paired PC?

  Are you sure? yes | no

giancarlo.dozio wrote 01/05/2022 at 17:21 point


very interesting project. I'm printing the 3D parts and buying the components. I have some question about the following components:

1) DC-DC Buck Converter Step Down Module: In the  component list I didn't found the exact type of converter: Input voltage, Output voltage, Power or output current?

2) Stepper Motor: I saw the microstep is set to 1/8 step. Is it possible to use a stepper motor with 1.8° step and a better microstep (1/16 or 1/32)?

3) Mini N20 Micro Speed Gear Motor 6V 60 U/min. Do you have a reseller for this motor?

4) Raspberry Pi Camera V2. I would be interesting using the 12.3MPixel one (Raspberry HQ) ( The PCB is larger and also the HQ version need lens. But the quality would be better (better noise ratio)

  Are you sure? yes | no

giancarlo.dozio wrote 6 days ago point

Hi again. I found that the DC/DC is a Uin=9V Uout=5V 3A

  Are you sure? yes | no

davidhhanes wrote 12/31/2021 at 17:14 point

I am having a friend 3D print the parts now, and have the PCB ordered as well. I'm having trouble finding a source for the correct "L9110H motor controller" form factor. Does anyone have a good source for this?

  Are you sure? yes | no

giancarlo.dozio wrote 01/05/2022 at 17:00 point

Hi, it should be a DIL8. You can buy it from different sources like:



  Are you sure? yes | no

domenico wrote 11/27/2021 at 08:56 point

Awesome project Anton. Thank you for sharing, I will definitively make use of your experience on this project to scan my dad's old home movies.

  Are you sure? yes | no

sixpack-de wrote 11/25/2021 at 09:10 point

Really cool Project, maybe I am blind (or stupid) :) , but is there a link to the stl files, or do I need to export them out of fusion? 

  Are you sure? yes | no

TomW wrote 11/19/2021 at 19:16 point

Any thoughts on adding sound?

  Are you sure? yes | no

Anton wrote 11/20/2021 at 02:35 point

this is something I'm also thinking about since I found several reels with sound track. I guess I'll see if I can find an old used projector on ebay that still at least can play the sound. I would record it and add it to the film "manually". Adding it to the build would be challenging, since the audio track needs to be read in real time, while the film is scanned frame by frame.

  Are you sure? yes | no

haleyma wrote 11/19/2021 at 15:23 point

Really enjoyed the story of your build journey.  I keep lapsing back to Tinkercad and am curious what resources you used to learn Fusion 360?

  Are you sure? yes | no

Anton wrote 11/20/2021 at 02:31 point

Thank you - glad you enjoyed the story. I remember the switch from Tinkercad to Fusion very well. I was so frustrated and really thought that fusion is just too complicated. I watched tutorials on youtube (e.g. ) and then just tried and tried and suddenly it seemed totally logical and easy to me. I guess there was some "unlearning" necessary coming from Tinkercad, where you design with objects vs fusion where you use sketches. Don't give up - its totally worth it :) 

  Are you sure? yes | no

haleyma wrote 11/20/2021 at 14:51 point


  Are you sure? yes | no

thejerry wrote 07/16/2021 at 17:08 point

So I am on the end of HW journey. I finished build and I am trying to scan something. works perfectly. No issue there. When I tried it showed error "contours,hierarchy = cv2.findContours(thresh, 1, 2) ValueError: not enough values to unpack (expected 3, got 2)", I found that this line is maybe outdated after some updates of OpenCV, so I tried change that line with help of this discussion .. I didn't show this error any more but I have new one and I am stuck :/ 

cnt = contours[l] IndexError: list index out of range

I tried to change it to 2000. Didn't help. What this could mean? I am not programmer, so I can only guess. Maybe it can't recognize frame?

I am using HQ camera and I didn't change nothing else in the

  Are you sure? yes | no

thejerry wrote 07/22/2021 at 10:36 point

I am pretty sure it was because of blob wasn't bright enough. I move LED little bit higher and add some brightness in camera settings. Looks like it helped.

I still wasn't able to make full scan. It seems to me it goes sometimes more backwards then forward and after some while of backward movement sprocket loose contact with film and scanning is stopped. 

  Are you sure? yes | no

Lazyfattree wrote 05/05/2021 at 11:13 point

BOM list with links to the components to buy would be interesting. 
I'm really excited to make 1 and then alter it for Super 8 aswell 

  Are you sure? yes | no

thejerry wrote 03/14/2021 at 18:57 point

I am gonna try to use new HQ camera. Before I am gonna start, is anyone here who successfully updated this great machine with HQ camera?

  Are you sure? yes | no

Richard Stevens wrote 01/11/2021 at 22:24 point

Really cool project, thanks a lot for sharing. I'm planning to build this and currently sourcing the parts. Two questions:

1.) I'm having a hard time sourcing the acryllic. 1mm seems to be difficult to get. Does anyone have an idea where to order it in Germany/Europe?

2.) I have a couple of optical endstop modules left over from my printer build. Is this what's needed? 


And I have a third question. I printed the sprocket gear on my SLA printer. The stepper hole fits perfectly. Also measured, the dimensions seem to be spot on. However the sprockets themselves do not properly align with the film. A few do but then it starts to get misaligned. Does anyone else have a similar situation? Am I doing something wrong? 

I had this on the same plate:

and it fits perfectly. 

Thanks a lot,


  Are you sure? yes | no

Anton wrote 01/15/2021 at 01:44 point

Hi Richard

the acrylic sheet I used was from ali ...

to the sprocket: there are 2 versions regular 8 and super 8 - sure you use the correct one?

  Are you sure? yes | no

doublehead wrote 01/01/2021 at 22:40 point

Great project!

Could I ask you about photo sensor? Which one is used? And how precise your machine can position film frame under the camera?

I've trying to build scanner with a same idea. But have some problems with precision of positioning of film frames under the camera using perforation. I've tried laser detector (both direct and reflection modes), UV LED and UV detector, mechanical sensor - but it couldn't give me required accuracy...

  Are you sure? yes | no

Anton wrote 01/15/2021 at 01:46 point


the precision of the stepper is not 100%. Thats why I use OpenCV to adjust the frame as well at to crop it out.

  Are you sure? yes | no

FORART fe wrote 10/01/2020 at 06:58 point

Hi there, cool project mate !

It would be also great to establish some kind of collaboration with other DIY-digitizers projects:

Hope that helps/inspires.

  Are you sure? yes | no

Federico wrote 05/22/2020 at 14:10 point

Very interesting project, I've got a lot of old 8mm films shot back in the 60's and 70's and I'd really like to digitize them.

Since I dont't have a 3D printer at home, I would like to ask you if someone among you has tried online 3D printing services and the average cost to have all the parts printed.

Thanks for your help!


  Are you sure? yes | no

Anton wrote 05/28/2020 at 08:24 point

Federico, I personally have no experience with 3D printing services. 

Generally most of the parts are easy to print and not critical in regards how precise they need to be. Only exception are the ones that I indicated to print with a 0.25mm nozzle (sprocket and the film guides.) The ones I printed in ABS need to be printed in something temperature resistant. (not necessarily ABS, but PLA got too soft during operations and started deforming)

Maybe that helps in the selection of a service provider. 

  Are you sure? yes | no

Federico wrote 06/02/2020 at 17:37 point

Thanks Anton. I'm considering buying a 3d printer, not only it's cheaper than having all the parts printed through 3d printing services, but it may be interesting as I've never tried one!

  Are you sure? yes | no

kdhildred5 wrote 05/12/2020 at 10:27 point

I have most of the parts already. Been toying with designing and building my own. But hey why reinvent I love your design. Have bookmarked it. Looking at new pi camera and I'll be getting started on printing the 3d parts shortly... top Mark's. I too didnt like what you got for low cost sub $1k but not prepared to part with more.. have about 30 reels to scan.

  Are you sure? yes | no

Bernie wrote 05/10/2020 at 05:31 point

Really interesting and perfect project, thank you very much! You did so much work in planning, building, description, making it perfect. And the best is: you made a description public. Many developers only write a general desription to show how perfect they are, but it is only a description without any instructions.

Ok, I printed everything (after so many fights with my chinese 3D-Printer) and i built (most) of the electronics. Only the circuit board i cannot build, because i have no possibility to print the layers (i cannot open in a layout-programm to print on a printer, i don't know why) - maybe you can publish it as a picture-file (jpg or something like this?) and Now i am waiting for some missing parts of the electronic i've ordered in china. They are not available in europe.

To install the "basic" raspi is also no problem, but i have really problems to install the rest of the software. Anton, Is it possible to put an image of the "ready installed sd card" to the project for download? There should be no problem with copyright, and it would help so much.

Thank you!

  Are you sure? yes | no

Anton wrote 05/12/2020 at 04:45 point

Hi Bernie

The installation of some of the necessary software is really quite tricky - especially openCV. I'll see if I can anonymise (remove my pwds etc) and make an image available. 

The circuit board I ordered from 

I just uploaded the gerber file (which I created with easyeda) and they shipped 5 pcbs for 2$ with a week. Since I was a new customer at that time the wavered shipping ...  

The gerber file is accessible here as well - in case you want to give it a try.

There is a picture of the layout posted here. - Let me know if you need more.

  Are you sure? yes | no

Bernie wrote 05/12/2020 at 10:08 point

Hi Anton

Do you mean the picture in the gallery? I can't find a better (newer?) picture of the layout in your description, so i don't know if this is the newest , correct design.

I don't want to order the board somewhere (ok, the company in the link is very cheap.) because i can make it by myself at home, when i have the printable layout.) The Picture in the gallery has a very simple layout, this i can also build by "wiring by hand". But i have t be sure, that the layout is correct. Is there any possibility to export the two layers (of the gerber file) in the fileformat jpg (or something similar), so that i can print both layers with a laser printer on folia?

An image-file of the software would be really very helpful for everyone who wants to build this - i am sure, i am not the only one. who is interested

Easyeda need a registration and i don't want to do this for one time use.

I wish you the best, very frienddly support and perfect publishing of the 3D-printfiles!

  Are you sure? yes | no

Anton wrote 05/13/2020 at 06:27 point

Hi Bernie

cannot reply your last message - so I do it here:

I uploaded a file called just now.

You'll find pictures of the individual layers. I hope that helps.

Yes - the schematic is very simple, you can easily solder yourself :)

  Are you sure? yes | no

Bernie wrote 05/17/2020 at 06:37 point

Thank you very much!

i will make a pcb (without sending to a company, i can do it by myself), it looks nicer than hand-wired.

For one part i will use a replacement (S8050), because it is really a problem to get it here in germany. I can only order in china and there some of the shops say it is npn and some say pnp. Same name and different types? Secret? I'm shure it should be npn. The delivery time to germany is in these china-shops is very long too, some say "to september". So I will try a similar/replaycement type i can buy here. The only problem at the moment is corona, all electronic-shops are closed, i have to order.

The image of the software is really a good idea ;-) - i hope, you can do it.

OpenCV is registered? I thought there is a free version too?

I hope, the scanner will work soon.

Greetings from munich!

  Are you sure? yes | no

michaelbouma wrote 04/30/2020 at 12:04 point

Hi Anton, ordered all the parts and started 3d printing the other parts. Just today the RPI foundation introduced a new PI camera which is a huge upgrade. Might be nice to try that camera as well. 

  Are you sure? yes | no

Anton wrote 05/04/2020 at 09:06 point

I saw the announcement - very tempting indeed!

  Are you sure? yes | no

thejerry wrote 05/18/2020 at 19:49 point

Hi Anton, thank you for your work. I am just on the start ordering parts and printing. So I wonder, should I order new Raspberry Pi HQ kamera? It looks like it is little bit different size. 

It doesnt't matter which Photo Interrupter Sensor Module I will get?

  Are you sure? yes | no

info wrote 03/19/2020 at 02:51 point

I cannot build one of these (I lack the tools and the 3D printer) but I desperately need a completed, ready-to-go machine.  I have owned the $300 Wolverine (total crap) and a $1,000 Reflecta (great but only good for Super8).  I need standard 8, Super8 and 16mm, and if there is a unit that will include Super8 for a three-in-one I am all about that...does anyone have a route to where I can buy one? 402-305-4013.  

  Are you sure? yes | no

ginjaian wrote 10/17/2019 at 16:29 point

I'm interested in the Pi camera + mobile phone 20x lens. Presumably need exact version as you to fit. Seems to be "SNAPUM mobile phone Macro Lens 20X Super Cellphone Macro Lenses for Huawei" on ebay. Is there much distortion to the image with this?

  Are you sure? yes | no

Anton wrote 11/08/2019 at 18:39 point

Hi! - sorry, saw your reply just now...

that sounds about right - I ordered at ali:

if that helps.

The distortion is minimal and not visible in the area we are using, which is towards the middle of the image. I have tried lenses with higher magnification, but there the distorsion became visible, that why I settled with this one.

  Are you sure? yes | no

fid wrote 09/15/2019 at 05:01 point

This looks like something I would love to build.  I have my father's old super-8 films.  He spliced them together onto 5 or 6 inch reels.  I was thinking of purchasing a converter for the project because there are 5 full reels.  The quality you are getting from your project looks perfect for what I would want as a result.  Thanks for working on this and documenting.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates