Friday, August 29, 2025

 

Unwanted Flexibility in μRepRap X Axis Driver Mount

Having assembled the current V0.04 I tested the X axis using my "Bogan Calibration Slide" - a slide with a piece of wire of known diameter on it. I noticed that some "50μm" steps were smaller than others, and after hunting around nailed this down to flexing of the X Axis Driver Bracket, despite having driven a couple of long M3 screws down it. So, the Axis Motor Diver Assy has picked up a couple of pair of mounting holes to anchor that a bit more firmly:


With the aid of a 2-hole Metriccano Square Strip (and another on the bottom), the Driver Assy and the Bracket are now firmly clamped together. Only one screw in each pair, dammit, but that's what I can do at the moment until I redo the Bracket with a captive nut cavity.

This was debugged basically by shoving Metriccano and business cards into gaps until the flexing observed through the microscope went away.

Much of last evening was spent battling with Flatpak, the app packaging system used for PrusaSlicer 2.9.2 which in my opinion is a step backwards from using AppImage. Flatpak mounts itself in its own little box, and to access filesystems outside of that box you have to specify to Flatpak (not Prusaslicer) that these should be accessible.

For instance, if I want to access the /mnt directory on Linux, where you manually mount disk drives and USB storage devices in fixed locations, I needed to run:

 flatpak override --user --filesystem=/mnt

or /mnt and all the drives mounted in it just will not appear in PrusaSlicer's file manager! This is not in the install docs.

Just to be clear, this is a Flatpak problem, not I Prusa problem. Though I would encourage Prusa to reconsider their use of Flatpak because I'm hunting down a couple more bugs in it that cause problems in PrusaSlicer.


Thursday, August 28, 2025

 

MAUS C V0.04 Assembly Continues

Managed to get the X Axis connected in. The flexures all seem to reach, and moving the Y Axis manually doesn't seem to cause any deflection viewed through the cheap microscope. New Z Tower is a drop-in replacement. Next stop, Y Axis. If I can get that done and tested in the next few days I can leave the git/wiki/Printables work to do on rainy days in hotels over the following week.

V0.04 Under construction. Black parts come from V0.03 and there's not many left...

Work progresses on the Pantograph Driver. It's a bit unwieldy as-is, so I'm thinking of shortening the arms and lowering the mechanical advantage to 2:1. This should still be adequate for micron work, and I consider anything over +/-5mm movement as meeting the V0.05 design goals at this point. I'm trying to figure out ways of putting the complementary flexures to constrain the Drive Screw into either the motor bracket or the driver's frame. V0.03/4 Axis Drivers are prone to wiggle if not carefully assembled, and I want to eliminate that.

Another problem with long beams is that they require a long frame to support them, and that frame can flex. So the shorter I keep the beams, the more rigid the framework can be kept.

In other news, my Prusa XL is now operational, but it's a bit of a beast and my existing work table is clearly not up to it. I'm afraid I'll have to spend some time making a new one. This will give me multi-material printing though, which will enable a few more interesting experiments with flexures and so forth (though I do not want to make multi-material prints a requirement for the standard design).


Tuesday, August 26, 2025

 

Z Axis Changes for V0.04 and V0.05

Assembling the μRepRap V0.04 revealed a minor issue in that the X Stage Flexure now only moves 4mm before colliding with the Z tower. As moving 4mm is "pushing it" with the current Axis Driver, that's not a huge problem and existing builds won't need to fix it, but I've changed the Z Tower design anyway:


I've trebled up those vertical supports to help add rigidity.

Moving on to V0.05 that's all going to need a rehash anyway. The Axis Driver is going to change shape, so I'm not concerned about the bodged nature of this fix.

Current thoughts are to  add constraining flexures limiting lateral movement of the pantograph flexure, and only allowing it to move up and down in line with the drive screw. Haven't figured out how to nicely design that yet.


 

Getting Back To V0.04 Bug Fixing...

I've been nailing inconsistencies in the behaviour of several Axis Drivers and noticed that the 50mm long screws I use to hold things together and brace the motor pillars are mebbe too long. When tightened, these can force the motor mount back off the motor. So V0.04 will have fixes for that in the form of holes in the plate underneath that'll let the screws over-extend a bit.

On the green part you can see the slope I've added for the limit switch to lay in. The red part is actually 1mm shorter overall, because I had one axis where the Drive Screw couldn't reach the Bearing Block at the top. I thought "If I have this problem, someone else will" so I shortened the pillars by 1mm. That's when I drove the 50mm screw into the motor through the holes in the top of those pillars, and noticed that another Axis Driver had the same problem. Fixed dat.

The Github Wiki has acquired a few updates on assembling the V0.04 parts - not finished yet though. I've assembled the 3 Axis Drivers and the XY Flexure Assembly. Just have to bolt them all into a solid lump and fit/smoke test everything. Will upload the V0.04 model changes then.


Monday, August 25, 2025

 

Preliminary Testing - And Full 1 Dimension Constraint!

OK, so I broke the first pantograph flexure. Fortunately I printed another one overnight.

Slight change to the model - I got the centre lugs slightly mis-spaced for Metriccano holes. Fixing that. Also because I fragged a flexure because it was hard to poke the nuts in under the flexures, I'm extending the mounting brackets.

The +/- 8mm range of movement doesn't cause any collisions, but there is a fair bit of flexibility in the beams that allows some torsion if they're driven off-centre. Shorter, thicker beams might be needed.

Another change I might make is to stagger the  anchors the other way, which would allow the drive screw to travel between the gap in the flexures. At the moment, if I tried that, the drive screw would have to poke through a beam. Damn.

One thing I realised is that if you put two of these flexures back-to-back, they form a very stable one dimensional linear reduction flexure. It's bulky, but might be useful. 


Sunday, August 24, 2025

 

Parallel Pantograph Flexure Take Two

Had a few thoughts while away (the second half of my travels have been postponed), so here's the next iteration of the parallelogram/pantograph flexure. No droopy bits on the print this time. I chickened out from moving the drive platform more than +/-7.5mm because I want to do a few other tests before I stress-test it. But that's plenty for the next major version of the Maus RepRapMicron.


 

The flexures are now only 4mm wide instead of 6, and 0.6mm thick (2.5mm long BTW). Their profile has changed too, with the footings that hold the flexures being plain vertical sides, and the top flexures that have to anchor to a 45 degree beam now have dead flat undersides. Oh, and the top beam is now level with the bottoms of the upper flexures so no crud falls out during printing.

With the narrower, cleaner flexures this is far easier to flex and the torsion on the ends is vastly reduced. I'll have to put it in some kind of test frame and give it a go.

My main concern is that if I have a horizontal drive screw the thing is going to bounce up and down because the drive screws seem to always have a little bit of eccentricity - which matters when you're using microns. So the axis being driven will have to have good constraint in (what in this illustration is) the up/down direction. If not, I'll just have to build some complementary flexures into the drive frame, but I'd rather not have to.

This flexure system should work in 2 dimensions, but that's not what I'm designing it for. Letting it flop around on two screw-driven axes unconstrained at this point is going to introduce a lot of errors. Later, maybe.


Thursday, August 21, 2025

 

First Parallelogram Axis Driver Test Print

It looks a lot worse than it is, folks. Not that there aren't changes to be made. It seems to move as planned at first glance, but was an awkward print, and the 3DEA filament I was using had poor bed adhesion.

One of the Flexible Couplings I'd made from it snapped internally - source of my suspicion about the X Axis Driver - so I switched to eSun PLA+. Quality filament pays for itself in reduced reprints.


The top flexure doesn't print in a stable way, but that might be fixable with some tweaks to the top beam. Testing it shows the flexures to be a bit stiff, so altering their length/width seems like a good idea and I might fix the profile a bit (the code there is a bit bodged). There's also more torsion at the two ends than I'd expected. That might resolve with more flexible flexures, but I'll have to pay attention as to where I put the drive nut.

I'll test it more thoroughly anyway, but not today. My schedule is very packed for the next few days with a shooting competition, surgery consult in the city, and some family business. The end result being I'm probably not going to get much done for the next week or so other than pushing the odd update to github. Hasta la vista.


Wednesday, August 20, 2025

 

Constrained Parallelogram Flexure Design

I've put platforms for drive screws, anchors, drive flexures etc. on a trio of parallelogram flexures. In theory the flat bits remain parallel when the flexures move in the XZ plane.


Having a little difficulty printing it as it's bloody cold here and things tend to detach from the print bed. Hopefully soon I can give it a bit of a test.

One thing on my mind is which dimension to drive it in - motion will be in the same direction as the drive. If I drive it along the Z axis, any wobble induced by the screw drive will be constrained in the Y axis. If I drive it on the X axis, wobble will be constrained on the Y axis. If I drive it on Z, both X & Y will wobble (though Y is fairly well constrained).

If I can assume that whatever I'm driving is constrained on the X axis, it makes sense to put the Z. All the framework would need a redesign, of course, and the XY Table might as well be redesigned to take advantage of the new driving arrangement. *Sigh*


Tuesday, August 19, 2025

 

Beginnings Of Linear Axis Driver Flexures

Here are a couple of printed parallelogram flexures, overall length 140mm. These have a 2.5:1 reduction ratio, and I can get between +/- 5mm-8.5mm of maximum movement on the central joint depending on how much stress I'm willing to put on the flexures.

While they look similar there is a significant difference. The top one was printed horizontally and the bottom one vertically. They're very similar functionally.

Being able to print the flexures vertically allows me to effectively print a side-by-side stack of flexures. This is important, because if I want to have parallel "flat" areas at the joints (to attach motors and linkages to, for example) I have to use at least two parallelogram structures that constrain each other in a way that keeps the flats parallel. A side-by-side stack should allow me to create a structure from multiple flexures and allow beams to cross over one another without interference.

On the V0.04 reassembly front, I've upgraded the Axis Drivers. Have yet to test them under a microscope to make sure they move smoothly, and I have suspicions about one of them. I've increased the speed by 20% and had to bump up the stepper controller power.


Monday, August 18, 2025

 

I've Hit The Axis Driver Motion Limit

I tried to get a bit more range of motion out of the Axis Driver so I could quantify the rotation of the XY Table. In the V0.03 Axis Driver the Pivot Arm bottoms out on the limit switch before it hits the end of travel. So some low-hanging fruit was just to lower the limit switch. Well, that didn't play out as well as I'd hoped. I managed to get it moving down an extra 1.5mm, which extends our range of probe motion to a whopping 3mm. Damn, I need 4.

Green Axis Driver with slightly greater range of movement on the left.

The problem is that the Probe Arm is on a simple pivot. As it swings up and down, the horizontal distance between the pivot and the drive nut decreases. Eventually this overwhelms the compliance of the frame and the drive nut seizes up.

FYI Here's the new Maus Axis Motor Assembly. I've changed the direction the switch wires lean in, and added a slope for the Pivot Arm to squash them against (which is what I intended to to in the first place.


To fix the binding up issue I need the all-new Axis Driver, and that's going to take a while to develop. Initial development won't take place installed on the frame, so development can happen in parallel.

The smart move is to reassemble the machine to V0.04 specs and make sure that still works. Once it does, I'll push the remaining changes into Github with the construction docs and get on with a few deposition/material experiments. Unless I find anything astounding out while rebuilding V0.04, the parallelogram-based Axis Driver will have to wait for V0.05, and that should have a better range of motion as the drive nut will be moving linearly.


Saturday, August 16, 2025

 

X And Y Driving Flexure Upgrade - Now Linear

By using a complementary flexure linkage on the X axis I now have linear linkages to the Stage. This is not a cure-all (see later), but it's a big step in the right direction.


The new flexures allow the stage to move along the Y axis while still being perpendicularly on the X axis. No bendy, non-linear, thin flexure links. Quick tests have revealed a new problem though.

The XY Table is not fully constrained and will allow some rotation, which was known. Previously though, when moving only 2mm this wasn't a titanic issue given the other sources of non-linearity in the design. However, it starts to get quite noticeable when displacements of 4mm or more are made. There is a fix: Join the base ends of the complementary pairs together. Another modification to the Frame Flexures. *Sigh*

Of course, it would help if I had an Axis Driver that could produce +/- 4mm of actual movement, wouldn't it?

Wouldn't it? Hmmmm....


 

Changes To Driving Y Axis

While I'm fiddling with the XY Flexure Table I decided to eliminate an issue with the way the Y axis is driven. Because of the way I originally developed Maus, the Table has just been a passive thing that allows the Stage to move in the XY plane. Long, thin flexures attached the X & Y Axis Drivers directly to the Stage. Unfortunately movement on the X axis would then influence movement on the Y axis as the flexures bent to accommodate each other. The effect was small, but there was no need for it to be there other than it being the way I threw the thing together. So now I'm driving the Y flexures on the table like this:

 

Still being developed (forgot to recess the screw heads for a start), but the Y Transfer Bar now pushes on the Y flexures in the frame. As these are isolated from the X flexure system, the movement of the Y axis will now be linear. This doesn't mean that the movement of the Stage will be perfectly linear yet, because the X Flexure will bring its own influence to the party. 

Working on that. Github update not quite ready yet.


Wednesday, August 13, 2025

 

MAUS C V0.04 STLs Uploaded - And News About An Elephant

The STL files for the XY Table V0.04 fixes are now up:

https://www.printables.com/model/1286343-reprapmicron-v004-micron-accurate-3d-printer

The elephant? Well, Marusa Mur et al of the J. Stefan Institute in Slovenia have 3D printed a 10 micron elephant - inside a living cell. Image below from their paper on Arxiv


But there's serious work involved too. For a start they've managed to put a blob of printer resin inside a cell without killing it (very often, anyway). They're printing barcode tracking tags so that cells can be individually tracked, and lasing cavities whose properties can potentially change in their environment allowing the innards of cells to be probed.

RepRapMicron isn't that accurate - yet - but hopefully will be a more accessible platform than the two-photon laser system that Mur is using. I did a bit of work with Robert A. Freitas on a book called Nanomedicine late last century (Gods I feel old suddenly) about the advanced implications of that kind of technology which you can read online here.


Tuesday, August 12, 2025

 

V0.04 Flexure Table Source And Assembly Docs On Github

I've uploaded the V0.04 XY Flexure Table source to Github. As you can see in the image below I've made the Table Frame attachment points wrap around the shelf on the Outer Frame. I've also added captive nut cavities because it was a pain in the ar...mpit to get the nuts into place when modifying the completed assembly.

 

I've started putting the V0.04 modifications onto the wiki as a separate section https://github.com/VikOlliver/RepRapMicron/wiki/V0.04-Upgrades because I don't want to be constantly modifying the V0.03 text and images as I make incremental improvements. Once I've printed the latest Table I'll upload some images and assembly docs, then annotate the V0.03 docs to indicate that there's a change. This will be the process going forward through V0.04

 

I've not updated the STLs on Printables. That'll happen when I know they work. Should I upload them as a separate item on Printables in the meantime anyone? 


Monday, August 11, 2025

 

New Article On hackster.io

Cameron Coward has just published a nice article on μRepRap:

 


 https://www-hackster-io.cdn.ampproject.org/c/s/www.hackster.io/news/can-reprap-revolutionize-3d-printing-again-with-the-new-micron-design-18c4775e4d1a.amp

The nanotech stuff mentioned will require at least a couple of generations of μRepRap-printed RepRaps... I'd better crack on then! 


 

XY Table V0.04 Flexure - First Hardware Attempt

I had to shift the V0.04 supports for the Table Flexure outside of the flexures because of collisions. So the points where the frame and table flexures join is now an enclosed joint. This means the screws are an essential part of the flexure attachment point, though this shouldn't be a problem.






Dimensionally it's the same size as the V0.03 frame, so replacement should be straightforward if tedious. I'll swap it in, do a quick bit of testing and I'll upload the files. Maybe I might upload the files earlier if anyone asks.


Sunday, August 10, 2025

 

MAUS C V0.04 XY Table Redesign Preview

Right, wasn't as bad as I'd feared - and my rebuilt laptop seems to be holding up.

Now both pairs of the XY Table Flexure Assembly complementary flexures are of equal length. I basically stuck a booster on the outside flexures to make the internal and external complementary flexures the same length. The X pair and the Y pair aren't quite the same, but that doesn't affect positioning. I've used less clearance on the mechanism (lengthened it) to offset some of the loss of flexibility from shorter flexures.

The  V0.04 will put the Table about 1mm higher than V0.03, which is well within the range of adjustment of the V0.03 Axis Drivers and framework. 

The non-linearity of V0.03 added up to a total of 40μm (according to my cheap digital callipers) over the entire range of motion, which is just over 8mm. So within the central +/-2mm of work area that amounts to a vertical error of less than 10μm, or about one thickness of the resin layers I've been depositing.

I'd noticed some offset but had put it down to experimental error or non-linearity of the drivers. Etching requires fairly enthusiastic lowering of the probe, and I've not deposited anything very large in resin, so the problem wasn't terribly obvious.

Anyway, got a few personal things to sort out, then I'll queue up a print and put a new XY Table Flexure Assembly together. If there are no unforeseen part collisions I'll tag the old V0.03 release and update Github. [Edit: Spoiler Alert, there were.]

Time for a backup... 


Saturday, August 09, 2025

 

MAUS C V0.04 - Fixing The Table Flexures Part 1

I've been unwinding my maths, and I've redone the outer flexure of the XY Table. Note how all the flexures are now the same length:

 

Of course, the inner flexures use totally different maths, so I can't just apply the same trick for the inner table flexure. Blast. Do that another day and upload both fixes then.


Thursday, August 07, 2025

 

ESP32 GRBL Controller?

Thinking of being dragged into the '20s. You might have noticed that I've been using Arduino/RAMPS to control the GRBL CNC side of things. Old hardware, but reasonably cheap and I have some kicking around.

Eventually the world will move to FluidNC on the ESP32, but there's a bit of a hardware shortage as all the compatible boards seem to sell out and never get a second run. I have a cunning plan (adding tail and calling it a weasel optional): Get an Arduino-format ESP32 WROOM board and stick one of those nasty, cheap CNC shields on top of it.

 

In theory, that'll allow me to run the new hotness and get ready for the changeover. FluidNC will also provide a built-in web control interface. One advantage of that is that I might be able to stick the game controller jog pad into my laptop, and use that to push gcode into the FluidNC machine over the USB port without having to disconnect my GUI interface.


Tuesday, August 05, 2025

 

All3DP Article on RepRapMicron

Guess what popped up in my news feed today?


https://all3dp.com/4/reprap-pioneer-returns-with-a-diy-3d-printer-that-hits-micro-level-precision/

That's Josef Prusa watching me demonstrate μRepRap in his chateau. A handful of Maker notables were also present, and we had an excellent brain melding session there while emptying Josef's wine cellar. 


 

Slight Flaw in Maus C XY Table Flexures


To quote von Braun "Research is what I'm doing when I don't know what I'm doing." Which is why the XY Table flexure arms aren't all the same length. Damn. Well, we'll get a few microns of vertical resolution back in V0.04, and we'll need it as the working volume increases.

That'll take just a little bit longer though because my laptop SSD has keeled over after being worked hard for 8 years. I have an up to date backup. Just need a working machine...


Monday, August 04, 2025

 

Symmetrical Pantograph - Don't Cross The Beams

The problem with the previous reducing pantograph design was that it is damned hard to print as some of the beams cross over each other. It occurred to me that by making the design symmetrical it could be made fully constrained to 1DoF without "crossing the beams."


True, it makes it much larger - in a practical version the main beams would be around 100mm long. But this would still fit on a standard Prusa Mk3 bed.

Again, a parallel linear flexure (not shown) would be needed to fully constrain the driven end. I'll play around and see what the flex angles are and what we can get away with to form a 10mm working area using a reduction of 2.5:1 - shorter beams mean less unwanted flexing in the mechanism

Oh, and if we move the anchored block (on the green line) up and down the Y axis, we can uniformly displace on that too.


Sunday, August 03, 2025

 

The Parallel Pantograph Axis Driver Concept

To give the μRepRap Axis Driver true linear motion (as opposed to the current very-flat-arc motion) I've suggested using a pantograph mechanism to do the movement reduction. The point of this is to allow common CNC or 3D Printer software to drive μRepRap without having to do maths to get the absolute positioning right.

To create a pantograph using flexures I need two things: First, there can be no shared pivot points; basically every pivot only has one moving arm sticking out of it. Second, the areas where the drive screw and stage attach must have a level land - I cannot directly attach the drive screw or a stage to a pivot point.

So I noodled around with FreeCAD and came up with this 1 DOF-constrained concept, based on having the drive screw on the left flat, stage attached to the middle, and the right flat firmly anchored:


As you can see, this functions as a 3:1 reducing linear pantograph, and you'll note the flats at the bottom remain parallel to the X axis. Printable design left as an exercise to the enthusiast...

Those understanding constraints might notice it relies on the drive screw being linearly constrained, but that can be handled with the same sort of parallel flexure as the Maus C stage uses, so I've cheated and left that off for clarity.


Friday, August 01, 2025

 

We have the PEGDA

The PEGDA has arrived. For those catching up, this is the main component of a UV curable resin that polymerizes as a stable ionic gel. What this gets us is a way of creating electronic devices using μRepRap's fabrication abilities. These devices won't be the super fast silicon sort of things, but rely on migrating ions into or out of gel structures to change their electrical characteristics.


These structures should be stable in themselves, but for long term use I'll probably encapsulate them in standard UV resin to isolate them. There are though a few other chemicals needed to do these tricks, some of which can be re-purposed from more readily available pharmaceuticals, and others which might need a bit of kitchen chemistry.


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

Subscribe to
Posts [Atom]