SnailScanToo or 2

MID 2025 UPDATE

PICO Faster
In February the RP2040 and the PICO were certified to run at 200 MHz. I had been procrastinating on using the newer tool-chain for the PICO, and decided to do it an take advantage. When running at higher speeds, some things ran smoother, so I suspect that some of the real-time stepper related items had been near the limit (at 120 MHz).

Life got on the way and unfortunately did not progress as much as I would have hoped… but some small changes made real improvements.

New Rollers
In testing at higher speed, I noticed that occasionally the film edge would appear to bind to the roller edge, particularly in the larger diameter (~28mm) rollers that I had printed. The issue appeared to be a combination of the angle into the film groove, and possibly the increased angle creating support/drooping issues on the print (I do not have the best 3D printer). Additionally, I noticed that the film dynamic was different, compared to the transport with all-smaller-diameter rollers. The amount of larger diameter rollers, and the increased weight had a noticeable effect. To narrow the gap between the capstan and the roller, I also wish to make the larger diameter (32 mm), leaving a very narrow gap, and potentially more weight. The reason for the larger rollers is to reduce sharp curves to protect the film from breaking.

To address the above, it was time to redesign the rollers. This time the angles were constraint to 45 degrees on the film edges, and the inside of the large roller was hollowed. The V shape hole inside eliminates the issues with 3D printing support.

Here is the shape used to revolve the larger diameter guides (now 32mm diameter and slightly larger than previous). The idea dramatically reduced the weight of the guide, -according to the slicer- from 23.5 grams (with a 27.7mm diameter) to less than 10 grams (with a 32mm diameter), while keeping the same outer shape.


The smaller diameter guide rollers were also increased to a 14mm diameter, and reprinted to have the same material and groove shape. These were printed solid, since there is not much space to hollow them out, and these -according to the slicer- are just about 2 grams each.

Picture of the new guide rollers (with 16mm film loaded).

New Stepper Curves
I had been using linear stepper speed control resulting in a trapezoid velocity profile for accelerating/decelerating the capstan stepper. In an effort to smooth the trapezoid, I tried using a velocity sigmoid shape, and the results were excellent, reducing the total time to move one frame by half, and slightly improving on the film movement. The sigmoid table is calculated for the number of steps required for 8mm. For 16mm the top is extended, using a single table for both.

F-Code (Film Code)
Finished coding the necessary commands for a minimum viable product in the PICO firmware. Still have a bit of cleanup to do on the code… but that is an endless task.

Next steps
It has been a long time to get the transport to this stage, but I am certainly pleased with the results. That is not to say that is perfect, far from it, but the cost/benefit is worth it.

From here…

  • RPi frame detection improvements.
  • A bit more PICO code cleaning and testing.
  • RPi user interface.
  • Testing special use captures (stacking and separating channel exposures).

Tingopix
I will also begin to open-source-share parts of the scanner -time willing- and will do so in no particular order. It will be shared with the name Tingopix. Meaning: Tingo latin verb: to color, dye, tinge, or stain… pixels.
If anyone is interested in any section, please let me know and I will make an effort to prioritize it.

5 Likes

Thank you sharing the progress, and for offering to open source the parts.
I would very much like re-use your rollers, and therefore I would appreciate if you could share the model of the roller. Currently I’m building the Gugusse scanner, with some minor modifications to his models, but that scanner requires changing both rollers and gate for each format.

Thank you for the kind comments @ChrisCph

Gladdly. Here it is. The repository includes a pdf with an exploding view illustrating how the rollers are assembled.

3 Likes

Thank you Pablo. Really appreciate you sharing these.
When time becomes available, I’ll see if I can modify the large roller to fit my larger 608ZZ bearings.

You are welcome.

Are you building 35/16/8 or only 16/8? The rollers I shared are only 16/8

Edit: I looked at Denis Carl’s new the Gugusse compact, and see that coincidentally what the project references as flywheels are 32mm diameter, and uses the 8mm shaft. So I think what you are trying to do is make a flywheel for both 8 and 16. Not sure of the particulars of the rest of the design, and if there is an issue with having different diameters on the 8mm and 16mm path. But the part looks doable.

Bad news… the gugusse compact flywheels have a unique shape, and larger shaft. Modifying the one I posted may not be easy.

Good news… modifying the profile is not so hard. I made you one to match the form factor for the gugusse compact.


Now… what I know:

  • It should print well without supports
  • It will be lighter (with 100% infill, the standard flywheel requires close to 30grams, the hollowed 8/16 with 100% infill takes 19grams).
  • There should be no difference with 8mm film (The 8mm groove matches the diameter of the original compact flywheel).

What I do not know:
The 16mm new part -by design- has a slightly larger diameter, compared to the standard 16. I do not know if this will have any impact on the scanner inner workings or performance. I do not know enough about his design, did not see any red flags.

Here is the link (same as above), part number TPX-25-10002-A.
If/when you get your project running, and confirm the shape is good, please let me know to update the drawing removing the “experimental component for testing” warning.

Hope it works!

1 Like

Thank you Pablo. Again much appreciated.

The Gugusse scanner supports 8/16/35mm, but where the rollers have to be changed for each format (including the gate).
Currently my needs are only family 8, S8 and 16 mm films, so your roller design should cover that. I’ll see if I get the time in the weekend to print one, and I will post a comparison to the already printed rollers (can’t show it in action, as I’m still completing the camera control)

Best regards
Chris

1 Like

I managed to print your version for the Gugusse scanner, and it does the work splendidly.

Here’s a video of the roller: https://youtu.be/ZLNy0ob4Yh4
and some screenshots of it, side-by-side with the original gugusse roller (yours was printed with the 0.1mm layer height and for some reason caused my printer to detect a lot of crashes which can be seen as gaps in both the video og photo, whereas the gugusse was printed with 0.2 mm and has no gaps. This has nothing to do with your design, but rather my printer not being good at handling 0.1mm. Both are printed in PETG to avoid any shrinkage):

And in place in the scanner:


I assume you took the bearing measures from the Gugusse rollers, as it is a very loose fit for the bearings, which was true for the gugusse rollers as well, but a bit of hot glue solves that :slight_smile:

Once again, thank you so much for sharing your design. I will swap all the rollers in the scanner to your design!

I think you actually posted a link to the Gugusse somewhere here, which led me down that way, but maybe you would like to share your design in the Facebook group: Redirecting... for others to benefit from your hard work. I haven’t tested your roller with film or scanning yet, as I’m still modding the design a bit.

Best regards
Chris

1 Like

Hi Chris, thank you for sharing the results.

I also print at 0.2mm layers, that should work well if it is less problems for your printer. The ones I printed for my scanner were printed in PLA, and the material was not a problem. The printer I have is an old Ender 3 modified with direct struder (and other mods). I had better results with Orca Slicer than with other slicers.

Yes, kept the inner diameter for the bearings the same as the gugusse part (22.4 mm). I thought it was a bit loose to the specs, but without the part on hand, just used the same. By the way, there is a difference -as you probably noticed- in the bearing pit shape: gugusse part has a flat seat for the bearing, this one is at a 45 degree angle, to facilitate printing without supports. So it may be best to make it tighter.

I did a quick revision, changing the bearing hole outer (top/bottom) diameter to 22.2mm, and the inner to 22.12mm. That should make it tighter, without being too hard to slide in. Let me know if still loose.

Look for TPX2510002B_for_ denis_carl_gugusse_compact_8_16.3mf in the same repository.

Glad the part worked for you.

1 Like

I’ll try printing the new during the week, when I get the time, and will give you some feedback on the new bearing dimensions.
I wanted to try printing yours with 0.1mm layer height to get more precise dimensions, but the next print will be with 0.2mm to avoid the printer detecting crashes.

Thank you!

A bit of side tracking… this design iteration (Snailscan 2) started two years ago (top post) with building and testing an integrating sphere, made of aluminum baking pans (with some cutting for the ports), some short square aluminum tubes, some laser-cut flanges, and J&B weld. In the spirit of making the project easy to reproduce/assemble, this sphere design would not be a simple task. Incidentally, the LED PCBs used in the aluminum sphere were designed to sandwich an oversize ping-pong ball… and these are not the best form factor.

New 3D Printed Sphere Option
Before I make a new LED PCB, which I hope would also include other LEDs for testing, I figured it may be appropriate to design a 3D printed sphere. But not only is my know-how of 3D printing new and limited, but the printer I have access to (Elder Ender 3) has limited capabilities too. Unfortunately, printing something in the shape of a sphere directly would no doubt require many slicer supports for the primary shape, which leads to a rough surfaces.

After lots of considerations, the best alternative -that I could come up- was to split the sphere in 3. A center hub for the LED boards, with front and back covers. The inside of the covers is spherical, while the outside is a truncated cone at a 45 degree angle… so the Elder Ender would be happy to print these with slicing supports needed only for the D holes for the screws.

Ideally, the LED PCBs should be farther to the sphere surface to avoid any direct light from the LED to escape through the port (as it is on the aluminum sphere). But to make the light ports at the 90 degrees point, I had to limit the distance and incorporated some baffles to avoid the direct light. To make up for the truncated cone, the sphere is also 80mm (vs 100mm of the aluminum pans). Keep in mind that -for now- this is being fit on the same cutout as the previous sphere.

I intent to print on white mate PLA for testing (output port in black)… before the coat of barium sulphate, to make it better (and quantify the difference).

Work in progress, but it looks promising… and still using the same LED PCBs.

1 Like

Typically white filaments are slightly abrasive. Since you will be coating it anyway, I’m not sure there is an advantage. Also, consider the orientation in the slicer. If you orient it with the concave surface (inside of the sphere) facing up, all your supports will be on the outside, where it should not impact the interior surface. If you are going for a smooth surface, use Bondo, or other filler and fine sanding should get you to the surface finish you want.

1 Like

Aluminum Barium Sulphate Coated vs 3D Printed Matte PLA

Would like to share the results after testing the above model for 3D Printed. First a summary of the differences:
Aluminum Sphere

  • 100 mm surface diameter.
  • Coated with barium sulphate.
  • LED boards are slightly forward to the sphere with a narrow square tube for separation.
  • No baffles needed.

3D Model/Printed Sphere

  • 80 mm surface diameter.
  • Printed with white PLA mate (eSun ePLA white mate).
  • LED Boards are 90 degree to the output port, closer to the surface.
  • Baffles to avoid direct emission from the LEDs to the output port.

Capture Setup
Both spheres were tested with the same set of three LED PCBs. Each PCB uses 4 white LEDs, capture at approximate 50% power.
The HQ used has the IR/UV filter removed, and an external filter is used.
The software takes a raw capture (not a DNG), the result is binned into a 16-bit TIFF, “ExposureTime”:4800.
Both captures were done with the same Rpi HQ exposure settings, with a Schneider-Kreuznach f2.8 50mm lens at f11. Camera distance/focus were setup for 16mm full frame capture.

Results - Aluminum Sphere (Barium Sulphate Coated)




Results - 3D Printed (ePLA Mate at 0.2mm layers, unsanded/uncoated)




Summary
The surface plot and waveform output for both spheres is flat. The 3D printed sphere, while unsanded an uncoated, provides significantly more output light (higher channel levels). This is consistent with the larger ports, closer location to the sphere surface, and smaller sphere diameter.

This experiment demonstrates that the 3D design, printing material, and printing quality (even with an Elder Ender 3) provides equivalent results without the considerable time/effort of a coated surface sphere. Certainly, if the 3D printed design is improved by coating the print with barium sulphate, it may improve the sphere output. Keep in mind that a coated surface should provide a more even spectrum response.

3 Likes

I’ve been curious about the obvious glow of the 3D printed parts using white filament. Would there be any benefit (like additional light output) if the printed sphere were wrapped in aluminum foil? It would seem that this would reflect the “wasted” light back in and boost the output. Just a thought from the meanderings of my brain!

Thanks for the detailed analysis.

Thanks @junker, That is an interesting thought.

What I see (it can be seen in the picture) is that with this filament type (PLA matte) the light that bleads out is shifted to the yelow/redish. Assuming the aluminum does the work, the light reflected back would be filtered twice (on the way out, and on the way back in) and may shift the color light a bit.

Now with more translucid filaments like PETG, your suggestion may have better results. Haven’t done much with PETG, starting to use it to make some parts for the scanner.

The same way the light bleads out, if there is a light hitting the back of the sphere it would bleed in. With PLA matte, I can see it a small bias of the HQ black levels. To avoid it, I was considering printing a back cover in black, but haven’t done it. One has to actually point a lamp to it to make a difference, which is presently not a normal condition.

1 Like