Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login
    1. Home
    2. MSquared
    • Profile
    • Following 0
    • Followers 1
    • Topics 2
    • Posts 66
    • Best 12
    • Controversial 0
    • Groups 0

    MSquared

    @MSquared

    21
    Reputation
    122
    Profile views
    66
    Posts
    1
    Followers
    0
    Following
    Joined Last Online
    Location Denver, CO

    MSquared Unfollow Follow

    Best posts made by MSquared

    • RE: 6th-order jerk-controlled motion planning

      @bot said in 6th-order jerk-controlled motion planning:

      @dragonn axis compensation was added to accommodate improperly built printers.

      Why should we not be aiming for theoretically perfect? It's a much cleaner approach than simply applying bandaids over dirty bandaids.

      The problem of achieving perfect prints from FDM has already been solved, and Duet electronics with RepRapFirmware already allow it. Speed improvements and "vibration reduction" has thus far only been proposed for mechanical systems which are less than adequate. I don't buy into this, at all. If this type of direction is pursued with the main branch of RRF, I will be considering the maintenance of a new branch designed for long-term support (ie, more locked down features) and geared towards high-end professional hardware.

      TL;DR Great idea! I think that would be a huge benefit to the community. I would be happy to help with this endeavor; assuming that it can be done in conjunction/co-operation with @dc42 and @T3P3Tony to avoid fragmenting the RRF user base as that has a tendency to undermine the value of both projects.


      I think an argument could be made that something similar to this approach might be valuable regardless. Many software packages and platforms follow an approach similar to this. For instance the "Long Term Support" version of node.js is currently 8.x while the "Latest and greatest" is 9.x this allows users of the system to choose a path that they are most comfortable with.

      I think that in some ways @dc42 is following this now albeit without a ton of formalization around it. For instance he mentioned in either the 2.0 thread or the 1.2.1 thread that he would back port critical fixes from 2.0 to 1.2.1 in some cases. Once 2.0 is stabilized and considered the gold standard I think it could be very cool to have two options to choose from "stable" and "latest".

      One of the greatest things about the RepRap community is that many of it's members are always challenging "state of the art" and "good enough". This has resulted in some amazing things (The Duet, 32bit motion controllers, new kinematics, the flex3drive / zesty, PEI print beds, dual extrusion, linear advance, piezo sensors, olsson ruby, laser filament monitors, etc...). It also has resulted in a lot of dead ends, failed concepts, bugs, fires, and forum debates. The constant desire to improve if only by a few microns is one of the reasons that FDM printers today are so amazing and useful.

      There will always be people trying to compensate for poorly constructed machines by changing slicer settings, trying new firmware features, and/or putting an olsson ruby on a machine that only prints PLA. One of the first things I tell anyone getting in to 3D printing is "don't even try auto bed leveling until you can level a bed by hand". Obviously some software and hardware features have made it easier to have a "less than perfect" printer and achieve decent results. This has lowered the barrier to entry for 3D printing. This is a good thing! A lower barrier to entry means more people using / buying products which results in new products (like the Duet), and lower costs (manufacturing efficiency due to volume). There is nothing wrong with these people, in fact, they are CRITICAL.

      There are also people like me who will redesign parts, spend hours printing them, and rebuild an entire machine because I want to PLAY with a new sensor, motion, or cooling concept. These people will obsess over the math behind .9 degree stepper motors, 6th-order jerk controlled motion planning, the amount of deflection in a delrin wheel, how thermoplastics bond at various temperatures, the G-code generated by a slicer, the thermo and fluid dynamics of melted plastic, layer adhesion, etc. We are annoying as hell, opinionated, passionate, and constantly looking for something new to play with in the hopes that we can somehow eventually print a Cessna or something. In reality we will probably pretty much just print new parts for our printers...forever.

      There are also people that use their printers in a mission critical environment and while I contend that the fact that they can do this is very directly related to so many people pushing the state of the art for so long; it doesn't change the fact that they need things to "just work".

      There is ample room for all sets of ideals, goals, and passions in this space; and quite frankly none of them are going anywhere and all are necessary for the continued success and growth of the industry. Curtailing the experience of one group for the benefit of another can spell the end of innovation, the end of progress, and ultimately that hurts everyone.

      @dc42 and @T3P3Tony are obviously quite busy, have business to run, and donate a TON of their personal time to the support and maintenance of their products and the community as a whole. I would never dream of asking them to do more than they already are so perhaps someone stepping up to help maintain a "stable" branch of the firmware and only bringing in new features when they are proven to either be at a minimum benign, or at best useful could be huge. Most of my real-world C/C++ experience is in developing against OpenGL on iOS but I am already planning on jumping into some firmware development for the Duet and would be more than happy to assist with the maintenance of something like this; but only with the blessing of @dc42 as the last thing I would want to do is accidentally fragment the RRF user base as I don't think that this would provide value in the long run.

      -M

      posted in Firmware wishlist
      MSquaredundefined
      MSquared
    • Berd-Air pump configuration notes for Duet users

      I have seen a lot of questions about setting up a Berd-Air pump on the Duet and since I have done just that recently I figured I would post some of my experiences.

      1. If you are running a newer Duet you can wire the pump directly to the board so long as you are using an appropriate flyback diode, and follow @dc42's recommendations in this thread to make sure you are protecting the fan MOSFET adequately. I believe on older Duets you will in fact need to use the e-switch or an equivalent external relay / mosfet / opto-isolating circuit. I have an e-switch which I used initially and it requires some soldering skills to build, but worked really well. I also used the YJ-Pad which simplified the wiring somewhat.

      2. Running the pump at an adequate PWM frequency will DRAMATICALLY reduce the noise and vibration from the pump. I run mine at 25500khz with no issues. I find that the pump/tube combination is noticeably quieter than my old axial fan /shroud setup and I really barely notice the pump noise over the sound of my extruder most of the time.

      3. Running the pump at an adequate PWM frequency will DRAMATICALLY reduce the amount of heat that the motor generates. When running at a low PWM frequency my motor was often too hot to touch after running for only a few minutes. Once I bumped that up the motor gets only slightly warm after running for a few hours.

      4. If you are planning on mounting it to the frame of your printer vibration dampening is essential. I found that my piezo probe was quite helpful in this regard as I was able to test several different strategies and monitor the results by looking at the piezo sensor level. I ended up using the 3mm larger standard mount with some pieces of 1/4" ID rubber vacuum tube from an automotive shop as "insulation" between the mount and the motor, and the mount and the frame. To accomplish this I cut some lengths of tubing and then cut that tubing in half across it's diameter, this gave me a nice "arch" of tubing that I then wedged into the mount to act as a dampener as shown in this picture:

      0_1525641083851_berd-air-mount.JPG

      I used three pieces of tubing in the mount, and one between the mount and the frame. Ideally I would have also isolated the screws going into the frame as they are still quite capable of conducting vibrations but I have not yet designed that mount.

      I run the Berd-Air from about 20% - 75% in my slicer for PLA and it works great, I plan on dialing that in a little bit more but thats a good starting range.

      Hope this helps someone!

      -M

      posted in Tuning and tweaking
      MSquaredundefined
      MSquared
    • RE: Welcome to the New Forum

      Hey All,

      I believe that I found and resolved the issue that was causing errors on the forum during peak load times. Please let me know if you continue to see any errors. Thanks!

      -M

      posted in General Discussion
      MSquaredundefined
      MSquared
    • RE: 0.36º stepper motors

      @badscript The Duet would generate the step pulses using the drivers attached to the Duex. The Duet doesn't really care about 1.8 vs.9 or even .36 degrees per step because you tell the firmware how many steps there are per millimeter of movement desired for each axis/motor. So if you tell the Duet that it needs to move 200 steps per mm it will generate 200 steps for each mm of movement that it sees in the GCode that comes from the slicer. In this case the steps per mm would just be much higher than a typical 1.8 degrees per step (200 steps/rev) or .9 degrees per step (400 steps/rev) motor. The actual steps you need per mm also vary depending on your setup, movement system, belts, cogs, gears, pulleys, etc...

      posted in General Discussion
      MSquaredundefined
      MSquared
    • RE: Large Silicone Heat bed 500mm x 500mm power supply and wiring?

      @SensibleDesign a 120v heater is going to be powered from mains (A/C) power.

      This is accomplished through the use of a DC-AC relay, which is sort of like a fancy type of switch. There are two types of relays mechanical where there is literally a physical switch, and solid state where the switching happens using a circuit.

      Essentially what happens is when a relay has power across one side of it, it actives the switch which allows power to flow through the other side of it. You would then use this to turn on and off the mains circuit and power the bed.

      More information here: Duet Documentation: Choosing a Bed Heater

      There are many places you can buy these relays online (eBay, Amazon, Alibaba, etc...).

      A word of caution, mains voltage is no joke and relays - in particular solid state relays - can fail "closed" meaning that it could fail in such a way that it would leave your bed heater on. A 1600w bed heater is going to be capable of achieving some remarkable temperatures left unchecked. Further complicating this situation is that the way we use our printers they have the ability to turn the relay on and off very frequently and this can increase the likelihood of failure. I would be wary of super cheap relays as they tend to be knockoffs and have been known to fail more often. I personally spent about $30 on mine and got a premium brand because the last thing I wanted was a melted relay causing a fire. Not trying to scare you off, I use a mains heater and I love it, but do not skimp on safety when it comes to 3D printing especially if you are powering anything with mains voltage.

      -M2

      ----edit to provide some additional links --
      Duet Documentation: Choosing Stepper Motors
      Duet Documentation: Choosing A Power Supply
      Amazon: Opto 22 120v 25A DC-AC relay

      posted in Duet Hardware and wiring
      MSquaredundefined
      MSquared
    • RE: Correct Microstepping Settings

      If I am not mistaken all surfaces in STL files are represented by triangles. Why? Because through the magic of tesselation triangles can make almost any shape fairly well.

      https://m.all3dp.com/what-is-stl-file-format-extension-3d-printing/

      A slicer reads this triangle data and does its best to create paths using GCODE that are reasonably accurate. GCODE actually has the ability to create “true” arcs (G2/G3) but I’m not aware of any slicers that implement it. The consensus seemed to be “it’s hard and for very little benefit”.

      TL;DR
      No matter how many circles you print, or your micro-stepping you’re still printing faces not arcs.

      posted in Tuning and tweaking
      MSquaredundefined
      MSquared
    • RE: Material Order of Preference for Machine Components?

      @doctrucker I have been using Atomic Filament: Carbon Fiber Extreme for most of my gantry parts and am loving it. It is basically as easy to print as PLA, but slightly more compliant (less than straight PETG), with MUCH better structural integrity. The compliance can be an issue in parts that are too thin, or poorly designed. but in my C-Bot this only proved to be an issue in a new part that I designed poorly.

      The Tg of PLA can be an issue anyplace, not only near the hot-end. Even though I started with PLA for all my parts I never actually had a problem with parts near the hot end, somewhat ironically, it was actually my motor mounts that had issues first as prior to switch to a Duet the motors would run quite warm and eventually allowed the PLA to bend under the tension from the belts. Less surprisingly my bed mounts also suffered once I started heating my bed up to 100c+ to try and print replacement motor mounts in ABS. Eventually I was able to print replacement bed mounts in ABS and switched to the CF Extreme for pretty much everything else.

      I have used Nylon in the past for a few parts, it was awesome, but the challenging to get tuned well enough to print larger parts consistently.

      My current preference is:

      • Carbon Fiber PETG
      • ABS (anything exposed to ambient temp > 60c)
      • PLA (in a pinch / prototyping)

      -M

      posted in General Discussion
      MSquaredundefined
      MSquared
    • RE: Large Silicone Heat bed 500mm x 500mm power supply and wiring?

      @SensibleDesign You are very welcome. Here is a VERY poorly drawn diagram of the way my heated bed is connected.

      0_1523264316873_Heated Bed Diagram.png

      This circuit is pretty basic, but due to the elements involved (mains power, heaters, etc...), I would be 1000% sure you know exactly what you are doing before attempting to recreate anything like this. Before you attempt to build anything like this be certain you understand all of the pieces involved as you are quite literally playing with fire 🙂

      To that end, I am happy to continue to share my knowledge, experience, and resources; and as @Phaedrux mentioned there is a lot of good information out there you should probably seek out as well!

      -M2

      posted in Duet Hardware and wiring
      MSquaredundefined
      MSquared
    • RE: 6th-order jerk-controlled motion planning

      @bot said in 6th-order jerk-controlled motion planning:

      (not because it would be wrong to fork the firmware, legally, but because I want LTS to remain as close as possible to the latest and greatest, so it doesn't confuse people going from one to another)

      100% or at least have a known / viable transition path between them.

      I didn’t mean to insinuate that you meant for hobbiest to go away either lol. Mostly was just taking the opportunity to jump on what you suggested and ended up writing a manifesto hahaha

      EDIT:
      It could also include making sure that bug fixes were added to the LTS version since they would likely be fixed initially on the Latest version.

      posted in Firmware wishlist
      MSquaredundefined
      MSquared
    • RE: Help please

      @flippnswitchez On a CoreXY swapping the motors reverses an axis. There are 8 combinations:

      Motor 1 Motor 2
      X Motor forward Y Motor forward
      X Motor forward Y Motor backward
      X Motor backward Y Motor forward
      X Motor backward Y Motor backward
      Y Motor forward X Motor forward
      Y Motor forward X Motor backward
      Y Motor backward X Motor forward
      Y Motor backward X Motor backward

      One of these combinations will always result in a left handed cartesian system. The other combinations will result in either a right handed cartesian system, reversed axises, or swapped axises. The exact setup you need depends on your motor location, wiring, and possibly belt routing.

      For reference you ultimately want a left handed cartesian system. This is important because a right handed system will print things backwards, this isn't a problem 90% of time but is maddening 10% of the time. The correct cartesian co-ordinate system looks like this:

      0_1523851005936_Cartesian System.png

      Purple is the location of my end stops so they are configured for X min, Y max and in my homing files I tell the printer to "home" to back-left corner.

      posted in Firmware installation
      MSquaredundefined
      MSquared

    Latest posts made by MSquared

    • RE: Attn Web Master - Dark Theme Problem

      What screen is that on? I will create a CSS override for the dark theme to fix that up!

      posted in General Discussion
      MSquaredundefined
      MSquared
    • RE: 0.36º stepper motors

      @badscript The Duet would generate the step pulses using the drivers attached to the Duex. The Duet doesn't really care about 1.8 vs.9 or even .36 degrees per step because you tell the firmware how many steps there are per millimeter of movement desired for each axis/motor. So if you tell the Duet that it needs to move 200 steps per mm it will generate 200 steps for each mm of movement that it sees in the GCode that comes from the slicer. In this case the steps per mm would just be much higher than a typical 1.8 degrees per step (200 steps/rev) or .9 degrees per step (400 steps/rev) motor. The actual steps you need per mm also vary depending on your setup, movement system, belts, cogs, gears, pulleys, etc...

      posted in General Discussion
      MSquaredundefined
      MSquared
    • RE: New firmware 2.0RC5 available

      @zerspaner_gerd I also cannot seem to load filaments anymore.

      posted in Firmware installation
      MSquaredundefined
      MSquared
    • RE: Berd-Air pump configuration notes for Duet users

      @klcjr89 said in Berd-Air pump configuration notes for Duet users:

      @msquared

      Brushless? ☺

      This was actually the brushed version. I will put up something with the brushless in a day or so.

      posted in Tuning and tweaking
      MSquaredundefined
      MSquared
    • RE: Berd-Air pump configuration notes for Duet users

      For reference here is a DB monitor of the pump running at very near full speed during a print. This is with the phone about 1" from the pump.

      0_1525796801115_IMG_7722.jpg

      posted in Tuning and tweaking
      MSquaredundefined
      MSquared
    • RE: Berd-Air pump configuration notes for Duet users

      @davea said in Berd-Air pump configuration notes for Duet users:

      I'm a bit confused about PWM. I have a Berd-Air pump on fan 0 through an e-switch mosfet.
      If I add an F25500 parameter to the M106 I have very little control over fan speed.
      If I leave off the F parameter I can vary pump speed from 0 to full speed. It seems that the higher the PWM frequency the less control over fan speed.

      When you run with a high PWM frequency are you still going through an e-switch?

      I was not. I still have my e-switch lying around and I may get a chance to test that later tonight or tomorrow and let you know my results. It is very possible that the e-switch may not respond to high PWM values as well as the pump does directly. If that is the case I have a DC-DC SSR lying around and I may give that a shot to see if it makes a difference.

      posted in Tuning and tweaking
      MSquaredundefined
      MSquared
    • RE: Using a mirror as toolplate

      @fma While I use a MIC-6 aluminum tooling plate as my heat spreader / heated bed I do use mirrors that I purchased from Home Depot as my "glass" and affix PEI/Printbite/gluestick to them as required. They seem to be reasonably flat and have been working out great for me. One negative thing I will say is that the mirror backing causes significant heat drop when compared to standard glass.

      I would be concerned about using a mirror without a heat spreader primarily due to potential warping / breakage if the glass didn't heat evenly.

      -M

      posted in General Discussion
      MSquaredundefined
      MSquared
    • RE: Firmware 2.0RC1 and 1.21.1RC1 released

      @dc42 I upgraded and used it over the weekend with no issues. Hardly a torture test but it seemed to be performing well...

      posted in Firmware installation
      MSquaredundefined
      MSquared
    • RE: Maximum Frequency of PWM Fans

      It is my understanding that the ground is actually pulsated, while achieving the same effect (pulsating the input voltage) it is an important note all the same.

      posted in Duet Hardware and wiring
      MSquaredundefined
      MSquared
    • RE: Berd-Air pump configuration notes for Duet users

      Seriously...check the PWM frequency on the fan port you are using to drive it. Once I bumped the PWM freq up to 20k the temp on the motor dropped like a rock.

      posted in Tuning and tweaking
      MSquaredundefined
      MSquared