I got a 3d printer last year, and I’ve been using it on and off. I want to document some of the stuff I’ve learned in the process. I’ll start with just an outline for now, and see if people are interested (or I feel inspired) for more specifics.
The specific printer is a Monoprice Voxel, which is a rebadged / whitelabel Flashforge Adventurer 3.
Had I known it was a whitelabel I would have instead bought the original version. I don’t know if that one has the same firmware bugs, but there’s at least one missing feature in the Monoprice firmware (nozzle temperature calibration when replacing the nozzle.) It’s possible to reflash it with the OEM firmware but I haven’t attempted this.
I’ve had lots of issues related to bed leveling.
The UI has a feature called Auto Level. (sp?) I’m not sure if it’s aspirational or fraudulent, but it does nothing even remotely useful, it just seems to pretend to.
The only operation the firmware actually supports here is calibrating the bed height. The bed is supposed to be factory level. If it’s out of level there is no supported way to level it. (This is marketed as “it doesn’t need leveling”, of course.)
I went through a lot of stuff in the process of figuring this out. In the end, I leveled the bed by disassembling it and inserting shimming strips of blue tape in key places where it mounts. This worked perfectly.
The filament feeding mechanism can detect if the spool runs out, by seeing the end of the filament pass through the mechanism. It can not detect if the filament stops feeding because it gets stuck or jams. If the “tail” of the filament spool is attached to the spool itself and fails to come free when the spool runs out, this behaves like a jam, and the printer will keep trying to feed the spool forever. I left a spool jammed for hours overnight this way—surprisingly there was no permanent damage to the printer, but it took some effort to figure that out and recover.
The original “collet” connecting the filament feeding tube (“Bowden tube”) to the print head is not very good. It might be fine if you never mess with it, but in recovering from the incident above, I disassembled it, and after that it was loose until I replaced it. A loose Bowden tube can cause certain mysterious and hard-to-diagnose intermittent printing problems.
Getting prints to stick to the print bed the right amount seems to be a problem on every 3d printer, not specific to this one. I still have a lot of superstitions about it, BUT most of them are from before I got the bed properly level. Now that I’ve managed that, the acceptable values of various other parameters (bed material, bed covering material, nozzle height over the bed) seem much looser.
Sometimes the nozzle seems to get microscopic debris or something clogging it. The symptom is that plastic will intermittently stop flowing properly and then start again.
Differential diagnosis: This can also be caused by filament spool tangling, or (on the first layer) by the nozzle being squished too hard against the bed.
To convert 3d model (STL file) to something the printer can print (gcode file), you use “slicer” software. The slicer software that comes with this printer is not very good. Most people use something else (I use Ultimaker Cura.) To teach Cura about my printer, I had to give it a printer profile. I got one from a random stranger’s forum post (like you do.) It turns out to have been subtly wrong, and also have a bunch of probably-superstitious crap in it that doesn’t do anything.
The foibles of the slicing process would be an entire book on their own. But here’s one that’s maybe specific to this printer: If I turn on the “z hop” setting in Cura, which should raise the print head when moving around so it doesn’t scrape the top of the model, the printer suddenly forgets to ever operate the Z axis at all, and tries to print every layer directly on the bed in the same space occupied by the previous layers. I don’t know if this is Cura’s fault, the printer’s fault, or neither (gcode being a very loosely specified language in many respects.)
There’s a lot more I could say, but since I said I was just outlining, I’ll stop there...
3D Printer foibles
I got a 3d printer last year, and I’ve been using it on and off. I want to document some of the stuff I’ve learned in the process. I’ll start with just an outline for now, and see if people are interested (or I feel inspired) for more specifics.
The specific printer is a Monoprice Voxel, which is a rebadged / whitelabel Flashforge Adventurer 3.
Had I known it was a whitelabel I would have instead bought the original version. I don’t know if that one has the same firmware bugs, but there’s at least one missing feature in the Monoprice firmware (nozzle temperature calibration when replacing the nozzle.) It’s possible to reflash it with the OEM firmware but I haven’t attempted this.
I’ve had lots of issues related to bed leveling.
The UI has a feature called Auto Level. (sp?) I’m not sure if it’s aspirational or fraudulent, but it does nothing even remotely useful, it just seems to pretend to.
The only operation the firmware actually supports here is calibrating the bed height. The bed is supposed to be factory level. If it’s out of level there is no supported way to level it. (This is marketed as “it doesn’t need leveling”, of course.)
I went through a lot of stuff in the process of figuring this out. In the end, I leveled the bed by disassembling it and inserting shimming strips of blue tape in key places where it mounts. This worked perfectly.
The filament feeding mechanism can detect if the spool runs out, by seeing the end of the filament pass through the mechanism. It can not detect if the filament stops feeding because it gets stuck or jams. If the “tail” of the filament spool is attached to the spool itself and fails to come free when the spool runs out, this behaves like a jam, and the printer will keep trying to feed the spool forever. I left a spool jammed for hours overnight this way—surprisingly there was no permanent damage to the printer, but it took some effort to figure that out and recover.
The original “collet” connecting the filament feeding tube (“Bowden tube”) to the print head is not very good. It might be fine if you never mess with it, but in recovering from the incident above, I disassembled it, and after that it was loose until I replaced it. A loose Bowden tube can cause certain mysterious and hard-to-diagnose intermittent printing problems.
Getting prints to stick to the print bed the right amount seems to be a problem on every 3d printer, not specific to this one. I still have a lot of superstitions about it, BUT most of them are from before I got the bed properly level. Now that I’ve managed that, the acceptable values of various other parameters (bed material, bed covering material, nozzle height over the bed) seem much looser.
Sometimes the nozzle seems to get microscopic debris or something clogging it. The symptom is that plastic will intermittently stop flowing properly and then start again.
Differential diagnosis: This can also be caused by filament spool tangling, or (on the first layer) by the nozzle being squished too hard against the bed.
To convert 3d model (STL file) to something the printer can print (gcode file), you use “slicer” software. The slicer software that comes with this printer is not very good. Most people use something else (I use Ultimaker Cura.) To teach Cura about my printer, I had to give it a printer profile. I got one from a random stranger’s forum post (like you do.) It turns out to have been subtly wrong, and also have a bunch of probably-superstitious crap in it that doesn’t do anything.
The foibles of the slicing process would be an entire book on their own. But here’s one that’s maybe specific to this printer: If I turn on the “z hop” setting in Cura, which should raise the print head when moving around so it doesn’t scrape the top of the model, the printer suddenly forgets to ever operate the Z axis at all, and tries to print every layer directly on the bed in the same space occupied by the previous layers. I don’t know if this is Cura’s fault, the printer’s fault, or neither (gcode being a very loosely specified language in many respects.)
There’s a lot more I could say, but since I said I was just outlining, I’ll stop there...