Wednesday, March 25, 2026

 

Sudden probelms finding height, new levelling code

Something happened today, and I don't know if it's humidity, contamination, subtle probe damage, or what. But probing the aluminium foil touchplate got wildly inaccurate. I've put a microscope on it, and you can now not only see the probe pushing down and bending, but actually watch it push the entire XY Stage to the side when it contacts. The error spread in multiple contacts on the same point has gone from 4-6μm to as much as 50μm. I didn't believe this, so I've improved utils/levelling_probe.py with multiple point probing and a bunch of other command line parameters. Here's a sample couple of runs:


 

Damn, it seems to be happening. The probe is behaving OK, the movement is smooth and eyeballing suggests consistent with the numbers. It's just dodgy contacting. So, I'll make a new touchplate from different foil and see how that works out. Maybe try a different probe too, but another family event looms and I have little time.

At least it spurred me to improve the levelling utility. 


Monday, March 23, 2026

 

Successful backlash test on new Flexure Coupling for X Axis

Fitting the new Flexure Coupling design (with a tapered motor shaft hole) to the X Axis Driver was extremely easy and needed no tools. It did mount 2-3mm above the old one though, so some faffing around with the spacers etc. was needed to line the Drive Screw height up. The result of the backlash test was impressive though:


As a reminder, in the photo above the top row is drawn right to left, the bottom left to right. The two left-hand lines are drawn at the same X coordinate, but in different directions on the Y axis. This allows me to spot any trouble caused by a misbehaving Y axis.

Gap between the top lines is 80μm. Subsequent gaps between the lower lines are increased by 0.5μm. I it's hard to tell if the 2nd or 3rd line from the left lines up best, which would be a maximum of 1μm difference. As backlash happens in both directions, the actual backlash distance would be half that, or 0.5μm max., compared with 1.25μm with the previous (cracked) Flexure Coupling. I'll take that.

If accidents like this keep happening, I may have to design the Flexure Coupling to be a bit more robust, but not having to fit the thing with a mallet may increase its working life... 


Sunday, March 22, 2026

 

Tweak to the Flexure Coupling

After seeing Jon struggle to fit the Flexure Coupling to his RepRapMicron  stepper motor, I've reached the conclusion that relying on precise printer dimensions for shaft fit is foolish. Coincidentally, I appear to have stressed my X Axis Flexure Coupling to the point where it cracked (see black mark):


This was caused by me tightening the Drive Screw down too much, but spurred me to modify the Flexure Coupling to have a conical hole in it (on github and Printables). The gentle taper makes it easier to start pushing the motor shaft in. The downside is that different printers and shafts will bottom out at different points. Still, there's a few mm adjustment in the design, and spacers in the print file for adjusting for gros shaft length.

The cracked flexure also explains why my X backlash increased after I fiddled with the Axis Driver. I'll fit the new one and see if that fixes it.


Friday, March 20, 2026

 

*Blog Moderator

The main moderator of this blog has had to retire for personal reasons. I'd like to take the opportunity to publicly thank them for all the work they have done not just for the blog, but for The RepRap Project as a whole. You have my respect, and I wish you the best possible future.

Sincerely,

Vik Olliver 


Thursday, March 19, 2026

 

RepRapMicron PIKA Refined XY Backlash Tests

The python script to create X & Y axis verniers for detecting backlash is up on github at https://github.com/VikOlliver/RepRapMicron/blob/main/utils/backlash_vernier.py

This has allowed more detailed examination of the backlash (line spacing is approx 80μm):


The first set of lines (upper or left) spacing increases by 0.5μm each time. The other set is at a constant spacing. Each set is drawn heading in the opposite direction to its partner. So the left set spaced on the Y axis aligns with the second marker (1μm) and the right set aligns at the 4th or 5th marker (2.5μm).

As they're headed in different directions, the relative backlash is doubled, so backlash on Y is 0.5μm and on X 1.25μm. I may need to increase the strength of the backlash bands on the X Axis Driver, but frankly for this stage of the game I'll only do that if I have to take it apart or realign it for some other reason.

FYI The slightly kinked line roughly in the middle of  the leftmost horizontal set is where I bumped the bench.


Wednesday, March 18, 2026

 

PIKA Preliminary Backlash Test, X Axis

I drew a series of vertical lines spaced at 100μm plus an increasing/decreasing delta, hoping to create a kind of vernier scale. The upper lines were done left to right, the lower ones right to left. Yes, I need to level the bed again, still haven't got round to it. Also need to glue the magnets down because they're moving, which should not matter but just in case...


The results here, to my immense surprise and joy, show no discernible backlash on the lines at each end, which are the ones that are supposed to line up if everything is aligned properly with no backlash. There might be a bit, but it's within the "noise" of dragging a probe across the surface subtractively.

I'll have to check my algorithm because the spacing looks a little wibbly, and do one for the Y axis as well, then post the vernier generator on github. Still, it's consistent behaviour, and nice straight lines, which I will take as a win.


 

PIKA Test Grid after fixing X Axis Driver

Found the loose screw on the X Axis Driver. Re-doing the grid produced something quite a bit nicer. Still not perfect, but it's shaping up and close enough to proceed with some backlash testing:


Again, that's a 10x10 grid of 100μm squares. Line widths are a tad more consistent now I've fitted a temporary part to compensate for my mis-printed PIKA Z Tower, thus improving the probe angle.

Little divot in the bottom left is just me figuring out where the substrate is.

I could probably make a 1mm QR code... 


Tuesday, March 17, 2026

 

PIKA Test Grid

I fired up the PIKA and ran a test grid. Been having a few camera issues after the laptop upgrade, but that's sorted now. More generally useful stuff on that in a later post, TL;DR vlc, mpv etc. aren't doing what I want so I've hand-rolled something.

The python script for creating the grid GCODE is here: https://github.com/VikOlliver/RepRapMicron/blob/main/utils/grid_gcode.py

Here's a 10x10 grid of 100μm squares etched into marker using Probe 9:

 

Spacing is pretty good on the Y axis, but the X axis needs a bit of love. The X deviations seem to be regular, so I suspect I just need to centre the Drive Screw a bit better.

Line widths are different on the X and Y axis this is because my particular PIKA prototype has the Z Tower 2mm too close to the centre and I have to tilt the probe at an unholy angle to get it in contact. The PIKA chassis takes a lot of printing, so I'll probably print a temporary probe assembly to work around that, which is a much smaller part.

The actual consistency of line width (given this is subtractive scraping) is reasonably constant over a 1mm square, though does fade out a bit towards the top right. My office got unreasonably hot yesterday, so I think I may need to re-level. 


Saturday, March 14, 2026

 

Photo Dump Of PIKA V0.01 assembly

Just to help Jon Oxer out during https://www.youtube.com/watch?v=r19WoewJ_Ys. These are the photos of the V0.01 PIKA Base assembly and Axis Driver integration that I took for the docs:



























 


Thursday, March 12, 2026

 

Original "Hello World" pixel code running on PIKA

No code changes, just ran it. The old 30μm/pixel version, 1.2mm long . So, backwards compatible.


 Used a hypodermic needle probe, so not the most elegant or fine dots, but well spaced.


Wednesday, March 11, 2026

 

Levelling PIKA RepRapMicron's Bed To 4 microns

The RepRapMicron probe needs to be within the print bed surface to within a micron or so. Levelling a bed on an ordinary 3D printer manually is a non-trivial exercise, so how the heck is it done on a μRepRap? Well, the PIKA has an answer to that: springs. Under the Stage there are four springs (using 6.5 dia x10mm ones of 0.5mm wire at present) that can be screwed down to adjust the height of the corners. The exact spring dimensions don't matter, but they have to have a compressed length of 2mm or less, a normal length of 5mm or more, and fit over an M3 screw. Yes, you can cut springs up, but fold the end so it doesn't dig into the plastic. The setup looks like this:


Functional PIKA files are now on github. 

The long screws are used as a guide to set the Stage height to roughly 3mm and are removed afterwards. I did try spring washers, but they don't have enough reliable range of motion.


To make life easier, I have written a very basic python script  https://github.com/VikOlliver/RepRapMicron/blob/main/utils/levelling_probe.py that will touch the probe on 4 corners of a 1mm square and report the high and low ones. A turn on a levelling screw equates to about 8 microns at that scale, so setup is humanly possible.

The conductive target is a "Touch Plate" slide onto which aluminium kitchen foil has been burnished and stuck with resin. The process is:

The script will return the probe to the starting position so it can be run in the same pattern repeatedly. You want to run it multiple times as the probe tip will push the foil down onto the Touch Plate slightly when it contacts a new spot. The Touch Plate will also spring back to some extent over time, so you always need to repeat.

The aluminium foil Touch Plate isn't reliable beyond 2 microns, so don't go hunting perfection at this point. This should be good enough to get going.

Caution: Don't rest the end of the slide on the Y Axis flexures. Easy to do by mistake.

Here's hard data. The first pass was done last night after I'd done levelling. The second pass was done this morning: 

vik@haast:~/uRepRap/utils$ ./levelling_probe.py 

--- Probing corners ---
BL: -602.094 µm
BR: -602.844 µm
TR: -605.688 µm
TL: -605.625 µm

--- Relative height to average ---
BL:   +1.969 µm
BR:   +1.219 µm
TR:   -1.625 µm
TL:   -1.562 µm

Highest corner: BL
Lowest corner : TR
Total variation: 3.594 µm

Returned to (0,0,Z_SAFE) for next run

[Rerun done first to re-level the touchplate surface - omitted] 

vik@haast:~/uRepRap/utils$ ./levelling_probe.py 

--- Probing corners ---
BL: -598.250 µm
BR: -600.844 µm
TR: -598.969 µm
TL: -597.750 µm

--- Relative height to average ---
BL:   +0.703 µm
BR:   -1.891 µm
TR:   -0.016 µm
TL:   +1.203 µm

Highest corner: TL
Lowest corner : BR
Total variation: 3.094 µm

Returned to (0,0,Z_SAFE) for next run


Tuesday, March 10, 2026

 

PIKA V0.01, More Rigid And Simpler

The initial hack for PIKA had a few shortcomings. Notably if you moved it you'd lose calibration, and it was extremely difficult to put the Stage mounting nuts in. I've addressed that and put the V0.01 on github (V0.00 wasn't really a version so it's not tagged).



I've recessed the screws in the flange on the bottom of the XY Table so they don't hit the Axis Drivers, and simplified the Base design so that separate feet are not needed.

 

This has made the whole thing much simpler to assemble, and I hope to tackle that bit tonight.
 


Sunday, March 08, 2026

 

2 Years - Happy Birthday μRepRap

RepRapMicron is two years old. Just saying...

Updated maus_pika.scad and metriccano.scad on the github  with a reinforced XY  Table, microscope pole clips, and Stage nut holes that you can poke nuts into without superpowers.


Wednesday, March 04, 2026

 

PIKA - Upgrades following first attempt

Sorry for the gap in posts, lots going on in my personal life, and the printer is running commission prints. Anyway, PIKA had a few problems. The PIKA frame was not sturdy enough, the Z Tower was too close, it was insanely difficult to insert the Stage mounting nuts, and the Microscope Brackets weren't as stable as I'd like. So, changes:

 

The base now has a much thicker edge, and there is a stiffening band 15mm down from the top edge. That should stop things going out of alignment if the unit is moved. The Z Tower has been moved back a bit, and extra bracing thrown on to keep that corner stable. There are now only 4 holes to mount the stage, and the mounting nuts are inserted from the more easily accessible side (at 45 degrees, sorry, only way I could do it given the print-in-place slope). The Microscope Brackets have been moved closer to the centre, and the bottom one lowered. This increases stability, and makes the lower adjustment screws easier to access.

The Microscope Clips will now have to be redesigned slightly - not quite enough clearance on the V0.04 ones. Once I've done that, and this massive commission job is done, I'll post to github and test. That won't happen this weekend as I'm away at a competition, but my life will settle down again after that.


This page is powered by Blogger. Isn't yours?

Subscribe to
Comments [Atom]