Probe no retracting at end of macro
-
Try adding S2 to your M291 command to make it blocking
https://docs.duet3d.com/en/User_manual/Reference/Gcodes#description-14
-
@Phaedrux Thanks. I just did that (M291 P"Check Consule for Results of Probing " S2) and it did block and ask for OK to proceed, when I clicked on the OK the system just cleared the message and then stopped. Probe still not docked.
BTW, if I manually issue a M402 the probe docks as it should. But if I include M402 in the file, it just reports "Probe Retract Failed"
-
I'm not that familiar with a klicky probe, but I believe it uses a micro switch
In your macro you use
if sensors.probes[0].value[0]==0The documentation for the OM state
sensors.probes[].value[]
Current analog values of the probeSo your condition is going to return true any time the micro switch is not actually pressed if it's an N/O circuit and likewise return false if it's an N/C circuit
How is it defined in config.g?You can check in the object model browser which value you have during the process.
I would have thought you'd be checking if the probe was attached rather than whether it's "active" ?
EDIT
Your code seems to assume that as soon as the probe is picked up you get a value of 1000.
That may be possible, but as stated the value is meant to be an indicator of whether the switch is depressed by touching the bed.
If the probe is docked and not electrically present do you get a null value?
That may be a way to check if it's attached.Also it's much better to put your code in blocks rather than as attachments
Use the </> button -
@OwenD Thanks for the input. See comments below.
So your condition is going to return true any time the micro switch is not actually pressed if it's an N/O circuit and likewise return false if it's an N/C circuit
How is it defined in config.g?Config.g M558 P5 C"^io2.in" H10 A10 S0.005 F1200:150 T18000 ; set Z probe type to switch type for Voron PCB Klicky on pins IO_2.in and the dive height (H10)
Switch is NCYou can check in the object model browser which value you have during the process.
When connected as a NC switch the probe value is 0. When triggered it is 1000I would have thought you'd be checking if the probe was attached rather than whether it's "active" ?
Semantics.. I used active/attached interchangeably in this case, attached is more descript.EDIT
Your code seems to assume that as soon as the probe is picked up you get a value of 1000. When picked up, as noted above, the probe value is 0. The code doesn't assume this, that is what happens.That may be possible, but as stated the value is meant to be an indicator of whether the switch is depressed by touching the bed.
If the probe is docked and not electrically present do you get a null value? Sorry, not sure what this is asking.
That may be a way to check if it's attached.Also it's much better to put your code in blocks rather than as attachments Thanks will use this in the future.
-
@Phaedrux Do you have any ideas why a macro would execute normally up until the last command line and then terminate without reporting an error and without executing the last command line in the macro (in this case M402)? It seems not executing all lines in the macro would create some kind of abend that would trigger some kind of error? Thanks
-
So, without changing anything else, I added a G28 to home after the Z offset probing commands. With just the G28 the system homes but the probe still does not retract. However, if I add a M402 command after the G28, the system does the G30 probes, then the G28 homes, then M402 forces the probe to retract. I also added manual G1 commands to the end of the file to retract the probe and those work as well. Not sure if that helps understand what is going on, but I hope it means something to somebody here because I should not need the last G28/M402 or the manual movements to retract the probe in this macro. At least I have a work around for the issue but I would like to understand why macro does not work as it should. Thanks for any help anyone might have.
;Z Offset Calibration Finish M98 P"Check to see if probe is attached.g" G90 ;set absolute M401 G1 Z20 ;raise Z up 20 mm G30 S-1 F150 ;(G30) home z (S-1) record z height G4 P500 ;pause .5 sec G1 Z20 ;raise Z up 20 mm G30 S-1 F150 ;(G30) home z (S-1) record z height G4 P500 ;pause .5 sec G1 Z20 ;raise Z up 20 mm G30 S-1 F150 ;(G30) home z (S-1) record z height G4 P500 ;pause .5 sec G1 X175 Y175 Z25 ;move Hot End to X175 Y175 M291 P"Check Consule for Results of Probing " S2 ;instruct user to check results in Consol G1 X63 Z20 F20000 G1 Y345 G1 X175 G1 Y175 ;G28 Z ;M402
-
Can you update to 3.5.1 and see if the behaviour is the same there?
-
@Phaedrux Thanks. I wound up finding another version of this file online and it seems to work fine. I suspect there was some hidden control characters in the other file messing it up. For the moment no need to pursue further.
However, I did download and install version 3.5.1 on my Duet 2 WiFi board. I down;oaded the zip from the Github page and used the installer in the DWC. It installed fine but when it was done it reported the following. I thought both the DWC and the Duet 2 should have updated to 3.5.1? Was this only a DWC update? Thanks
-
@JADoglio said in Probe no retracting at end of macro:
used the installer in the DWC.
what do you mean by installer?
The best way to update is to download the release zip file and upload it to the DWC sys tab, it will extract it and install everything.
-
@Phaedrux I used the install update button on the machine-specific tab. I also, just tried to upload it again from the system tab and again, it installed without errors, but I still got the same result. I did not revert back to 3.4.6 first, not sure if that makes a difference. Thanks
-
Please try sending M997 to force a firmware update.
-
@Phaedrux Thanks...I tried here are the results
I also then reinstalled 3.4.6. That installed and reset the DWC to 3.4.6. So, everything matched.
I then did a hard rest on the board powering off, then on.
I then redownloaded 3.5.1 and used the system tab upload to install it again.
Sadly, with the same result as before. Still showing firmware version as 3.4.6 and DWC as 3.5.1.
-
that's quite strange. Can you try using the fallback instructions?
https://docs.duet3d.com/en/User_manual/RepRapFirmware/Updating_firmware#fallback-procedure-1
Start with #1 and then if that doesn't work still, try #2.
-
@Phaedrux Thanks again, I tried to do install procedure 1. I never did find the IAP file. Short editorial, as this is mandatory file to complete the install, it seems like it should be as easy to find as the bin file? You guys really do a yeoman's job keeping us all going, but as this is the second time I have had issues finding this file.. I am just saying.
In the Github repository I did find the Duet2Combinedfirmware.bin file. When I uploaded that, 3.5.1 installed as it should and the firmware and DWC are now both on 3.5.1.
On the original install of 3.5.1 I went to the github page using the link on General tab. I did not realize that that only took me to the DWC update file and not the firmware. So, it was doing what I was telling it to do, I just did not realize that.
As I understand it, you normally recommend updating both the DWC and the firmware and keep them on the same versions. If this is correct, then it would seem that the link should take me to a page where I would download both. As I am a long way from any kind of expert on how other people use these boards, maybe the link makes sense as is. In that case, perhaps adding another link to the combined DWC and the firmware download page could also be added.
Thanks again, I am not being critical, like I said you and David and whoever else are helping you do a great job. I always appreciate the support you all provide.
Jim
-
@JADoglio Thanks that's a good point on the link in the general tab.
-
@Phaedrux
Side note: We have gotten pretty off topic at this point, sorry about that, and I am sure there is probably a better string for this discussion. If you want to move it, please do. As your systems are open source, and used and modified by many for their custom purposes I am sure their is a need to continue updating and doing other things as Duet does today. Your devices are popular, well built, and very well supported and there is also a user base that does not care about the open source, or customization opportunities with your hardware. We are just end users looking for a reliable solution to a need. From that perspective, I offer the following comments.Thanks again, One last suggestion.
If the link in the DWC system-specific tab actually was a "Check for Updates" link that looked at the Github repository, then verified if an update was available or not, and then it gave the user the option of downloading the update and automatically installing it, or not, that would be a huge help for users. That would probably save you all a lot time not having to answer these kind of questions because the right files would be downloaded and installed for the right hardware without the user needing to know any of the specifics.
Github is a great repository for all sorts of technical computer programming/development information. However, it can be very intimidating for many/maybe most, of your users. For me, it has been a very slow learning curve as nothing about navigating Github is obvious. I am a PC computer savvy user (started with an Apple II Plus in 1980). I also have some programming knowledge and a lot of web experience. And even with that, I am just starting to be mostly comfortable navigating Github. When Duet started out, I am sure Github was great/invaluable for the people using it.
Today, people are using your hardware for a lot of things. We have a job to do and we just want do it. We want the systems needed to just do the work and if they need updating periodically, we want them to update behind the scene, without a lot of need to know how it is being done. We just want our hardware to work. I guess the short version of what I am saying is that I think a lot of people using Duet hardware today just wants to know what time it is, we have no inclination to build a watch.
You have a phone and, I am sure, many computers. The programs on those devices update constantly. While that is sometimes annoying, it is at least seamless and does not require me to know anything about the program or how it is being updated.
As I noted at the beginning, this is concept is somewhat antithetical to the whole open source concept, but I think/hope they can both live in harmony making Duet hardware more attractive and easier to manage to a larger user base. Sorry for the long note, but I have been thinking about this since my first update on my Duet 2 WiFi over 4 years ago.
Thanks again for all your help over the past several years.