Help me get connected to my Duet2Wifi
-
@Kwad3d said in Help me get connected to my Duet2Wifi:
How do I get the axis to just grind into the home position?
why is that a goal?
butG1 H2 X-320.5 F10000
should do it.G1 H1 X-320.5 F10000
as you had it like will move to the endstop and stop.To see the difference in H1 and H2 paramterer https://duet3d.dozuki.com/Wiki/Gcode#Section_G0_G1_Move.. core xy ..
-
@bearer Ok. Im on a coreXY so im a little confused by the documentation on H2. Im getting the impression that that is for a single motor move but I have a tandem motor set up for X and Y. Am I overthinking it and just try the H2 instead?
-
H2 works a bit different on a CoreXY. Normally it just ignores endstop status and allows a requested move to work, but in a delta and corexy it also targets a single motor move.
What bearer is saying I think, is that if you want to ram the print head into an axis, using H2 to ignore the homed state and execute the move would give you that.
Anyway, back to actually tuning your homing moves...
Did you ever try this to see what combination of motor current and feed rate works?
Example
M913 X30
G1 H1 X-300 F10000
M913 X40
G1 H1 X-300 F10000Also, just to eliminate the mechanical side, is this a new printer build or one that was working previously?
Since it's detecting a stall, is it a false positive, or is there actually some binding on the XY motion?
If you detect the belts from the motors are you able to move the print head around smoothly and freely?
With the belts attached, are you able to slowly move the head around with mostly equal resistance in all direction?
If the mechanics are all clear, then we're left with two parameters to tune for sensorless homing to work, motor current and feed rate.
Motor current will depend on your motor specs, we think the rated current is 1700 and 80% of that for normal usage is 1400.
Then we need to find the lowest percentage reduction of that which still allows for normal movement. So start at M913 X10 and then try to jog the axis (don't try a homing move at that point. You can send G92 X100 to force the x axis as homed btw to allow you to jog it normally.) If it doesn't move, up it to M913 X20 and repeat. When the motor reliably moves you've found the right motor current percentage for sensorless homing.
Next would be finding the right feed rate.
If it's still stalling all the time, then we need to dig a bit deeper and would ask that you post your config.g, your homing files, the results of M122, and of sending M98 P"config.g". Also some more details about the printer. We're not in the room with you, so we only know the details you provide.
-
@Kwad3d
yes h2 is not for corexy movements. H1 is correct -
@Phaedrux just as the forum is not flooded with people having problems on social media you don't see anyone who is using it successfully either and most people recommend against attempting it. In fact on the group for the Sec kit there are plenty of people who have swapped to a duet but went through the trouble to design mounts for ends top switches on a machine designed to use senseless homing and not a single person in the group I have seen has senseless working. Im not crusty just pointing out the night and day difference between setting up senseless homing between duet and a marling board. Marlin has a single setting to make homing less or more responsive and doesn't require over a day to set up correctly. Simple fact is it is way easier to do on marlin and Duet3d for all its advantages over marlin is clearly falling short on senseless homing compared to marlin. Again not crusty just facts. Kind of like being a Alcoholic. You can't begin to make things any better if nobody will admit they have a problem.
With that said.. Yes the printer worked just fine on Marlin before the board swap and had zero problems homing without endstop switches.
I did try every combination of current from 800-1400 and adjusting the drop current settings from %50-90 on every current setting. I also played with feed rates but in general were moving the wrong direction collectively. on the standard current and feed settings I could get it to home on occasions but all the suggested alterations have resulted in not a single successful homing move.
As for the motion system it was smooth when build only around 6-8 weeks ago but I can remove the belts to confirm its not contributing to the problem.
At this point I have already designed and printed manual endstop mounts as it will be the shortest distance to get to a usable state for the board.
-
@Kwad3d we have an example of sensorless homing for a corexy on the wiki for the LPC port.
Info here https://github.com/gloomyandy/RepRapFirmware/wiki/Sensorless-Homing -
@jay_s_uk I think I just have to accept the fact that it is not for me. I run a business and I need dependable homing on a machine that will run 20+ hours a day. I can only imagine I will have to go through all this again in the future as the printer ages or when upgrading something. The concept of leaving the machine as it was designed to be used was what I was after but obviously RRF has some work to do on this front. If Marlin can have a single setting to adjust the sensitivity then I see no reason whey RRF can't get there at some point. so maybe I will revisit senseless homing in the future when a newer firmware version comes around but till then I'll stick with a simple switch.
-
@Kwad3d said in Help me get connected to my Duet2Wifi:
I run a business and I need dependable homing on a machine that will run 20+ hours a day.
Then you can't beat the reliability of a simple switch.
I don't know how marlin sets the sensitivity of stall detection for sensorless homing since it's literally a function of the driver to detect the back emf and stall.
There are examples of working sensorless homing on a corexy. The E3D tool changer uses it for instance. Though corexy presents a challenge for it because of the nature of the dual drive motor setup and the compliance in the belt. The system needs to be rigid to produce a short sharp shock. A cartesian printer with a single motor per axis doesn't have the same issue, so it's a lot easier to tune.
Why it's not working for you, I cannot say. I can only speculate based on what info you've provided. I've offered how I would approach figuring it out.
Perhaps the motors you're using are different than the ones we thought you had?
@Kwad3d said in Help me get connected to my Duet2Wifi:
You can't begin to make things any better if nobody will admit they have a problem.
This is open source hardware and software, if there's a problem, we're all here to solve it and improve it. However, I don't think you've demonstrated there's a problem other than with your setup.
The 2209 and the 2660 are different drivers. Maybe the difference in sensitivity is very different. It's a bit of a moot point since the duet has the drivers it has. Others have gotten it to work without issue, and others have had problems, and yes, a simple switch is usually recommended, because it's cheap, simple, and works reliably.
However, in your case it's detecting a stall immediately, which is the opposite of what you'd normally see as a problem, which is it doesn't detect a stall at all and just slams into the hardstop.
-
@Phaedrux Please don't be offended. I appreciate your patience and assistance on the issue. As I suggested I recommend the Duet team get ahold of a 32 bit marlin based board so you can see where the competition is at with the feature. A company that feels there safe on top can be caught off guard by a competitor who can identify where the need to improve on their product. Now if marlin was perfect we would never be having this conversation. So all Im saying is there is room for improvement in the tuning process.
And yes my LDO motors do Look a little funny compared to the pics of genuine LDO motors pictured so that could be exactly what makes me feel the tuning process is too complicated if they are a cheap clone that does not have the correct specs. I will reply again when I get to adjusting the leveling points for the BL touch. Hopefully I will have better luck on my own this time around as I did set it up before when I originally had the board on my CR-10 but some of the points were a little off. Again I appreciate your assistance. I just can't spend $1000 of my personal time trying to get senseless homing to work when I have other stuff to get done.
-
No offence taken at all. Good luck with the rest of your commissioning and feel free to come back with any questions.
-
@Phaedrux Im almost there now. X and Y are homing great now and Im on the BLtouch set up now. when homing Z im getting this error now "Failed to enable endstops".
Here is my endstop and z probe setup
; Endstops
M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop
M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop; Z-Probe
M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X-26 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
M557 X36:290 Y46:290 S48 ; define mesh gridI have tested the probe and it will deploy, retract, and reset as well.
I tried adding M574 Z1 S2 to the endstop lines but the probe failed to deploy
-
most likely are missing the G30 in your homing files and are trying to hit the none existing endstop
post your homing files
-
You need to change your homez and homeall files to something like
G91 G1 H2 Z5 G90 G1 X150 Y150 G30
A probe doesn't use the typical G1 H1 moves to home.
That code above basically lifts the bed away from the nozzle, moves to a position (usually the centre of the bed so adjust taking into account your probe offset) and then it proves the bed at that point to set Z to whatever your probe offset is. -
@jay_s_uk Ok that seemed to get me going.
Now I just have to figure out how to adjust where the mesh starts for each axis. the XY max probe points are perfect at 10mm inside the max points of the bed. However the X is starting at 40mm (62 at the nozzle) and the Y is starting at 55mm.
-
@Kwad3d said in Help me get connected to my Duet2Wifi:
However the X is starting at 40mm (62 at the nozzle) and the Y is starting at 55mm.
M557 X36:290 Y46:290 S48 ; define mesh grid
If it's starting too far inside the limit, increase/decrease the limits in M557
Try X10:290 Y10:290
To make testing faster, change S48 to P2:2, this would result in a 2x2 grid instead of a full detailed grid. Once you're happy with the extends you can switch back to the spacing method, or increase the number of points.
-
@Phaedrux Thanks. Yea I'm slowly getting it where I want by making those adjustments. Despite my negative opinion on senseless homing the BL touch setup it way simpler and easier than marlin which continuously tried to probe off the bed regardless of adjustments made.
-
@Phaedrux Seems I got the bed mesh dialed in pretty good. I used previous Hight maps to adjust the bed mounting points and this is my result. Sure its not %100 perfect but I will take it. Hopefully that is the last of the assistance I need. Thanks again for your patience and professionalism
-
@Phaedrux So I think Im done setting up the machine. I got a message when sending M500 so save my pid tune saying "Warning: M500: No M501 command was executed in config.g"
Do I just add M501 after the last line in config.g or am I good to turn it off now?
-
@Kwad3d said in Help me get connected to my Duet2Wifi:
Do I just add M501 after the last line in config.g
Yeah you need to add M501 at the end of config.g to load the saved values at boot from config-override.g.
The saved values are still there in config-override.g whether you turn it off or not.
-
@Phaedrux Hi again. So I ran into a issue with my bed leveling. When I got the probe grid mapped out for my printer I used the hight map to manually level the bed. I did such a good job that I never noticed that the printer was not compensating for irregularities. I recently changed the build surface and now my mesh is no longer as flat as I posted in the pic. Now Im noticing that the printer is not adjusting the z axis for a good first layer. What to I need to do to turn on leveling based off the generated hight map?