PT100 better wiring and software M305 settings
-
Hi,
tried to take away all cables today but the PT100: Long story short: It does not matter what is connected to the duet, the error on the PT100(-cable/-connector/?) is still there. Since I made 3 cables the last weeks as written earlier, as of today with the other stuff removed helping nothing, my next thing to test is if the PT100 could have a loose contact somewhere or is internally broke. Just ordered a new one. This brought me to the point to think about the daughter-board, so I went to the website to the MAX31865 and it says there:
"Fault Detection (Open RTD Element, RTD Shorted to Out-of-Range Voltage, or Short Across RTD Element) "
If I - hey easter has arrived - have still maybe a wish to add to the wishlist: In that possible next revision of the PT100-board you wrote of which might be more immune to EMI, could you make those "fault detections" more accesible to the console, to be able to have a better understanding of the error... just dreamin a bit here with my problem still unsolved... I am sure there is a lot of other things to do with the duet3 around the corner...My new PT100 (1 from e3d, 1 from sensorshop24) will arrive next week so hopefully I can track down the error more precise then (have no connector left for the e3d(molex?)-connector on the PT100 to just directly plug it into the board and test it with my hands or a soldering iron (it was stupid that I directly put the connector to my own 3meter cable instead of first testing the arrived sensor in the original state)... also seems to be a quite little plastic connector that e3d choose, maybe I swap it with a diffrent heavy-duty- one to make sure it is not the connector...
Smartest idea so far maybe:
Another thing that came up my mind: Within M307 of the heating-process-parameters the Fnnn-PWM-Freq-paramter: Is there a PWM-Freq that would be ideal regarding lowest possible noise for the MAX31865 and what would that frequency be? (I have read for external boards:"The communication between the Duet and the RTD interface board uses 4MHz SPI signalling, so the wires should be kept short" but that should not be any problem if using the duet-daughter-board directly connected I gues... I have not checked with which frequency the MAX31865 works on the PT100-line?) Would it be as simple as choosing an uneven divider that will never be in harmonic, I guess no (?), it will be more complex? As usual I assume you already thought about it and the default-PWM-Freq is already optimized for it... just have to ask
-
@lb said in PT100 better wiring and software M305 settings:
If I - hey easter has arrived - have still maybe a wish to add to the wishlist: In that possible next revision of the PT100-board you wrote of which might be more immune to EMI, could you make those "fault detections" more accesible to the console, to be able to have a better understanding of the error
There are already ways to get that message:
-
If the error occurs immediately, then it will be reported when you send the M305 P1 X200 command.
-
In the 2.03beta firmware, sending M305 P1 will report (amongst other things) the last error reported by the sensor.
Another thing that came up my mind: Within M307 of the heating-process-parameters the Fnnn-PWM-Freq-paramter: Is there a PWM-Freq that would be ideal regarding lowest possible noise for the MAX31865 and what would that frequency be?
There is already an option in the M305 command to reject either 50Hz or 60Hz mains frequency. You could set the heater PWM frequency to be the same.
-
-
@dc42 said in PT100 better wiring and software M305 settings:
@lb said in PT100 better wiring and software M305 settings:
If I - hey easter has arrived - have still maybe a wish to add to the wishlist: In that possible next revision of the PT100-board you wrote of which might be more immune to EMI, could you make those "fault detections" more accesible to the console, to be able to have a better understanding of the error
There are already ways to get that message:
-
If the error occurs immediately, then it will be reported when you send the M305 P1 X200 command.
-
In the 2.03beta firmware, sending M305 P1 will report (amongst other things) the last error reported by the sensor.
Another thing that came up my mind: Within M307 of the heating-process-parameters the Fnnn-PWM-Freq-paramter: Is there a PWM-Freq that would be ideal regarding lowest possible noise for the MAX31865 and what would that frequency be?
There is already an option in the M305 command to reject either 50Hz or 60Hz mains frequency. You could set the heater PWM frequency to be the same.
Thanks (!): Set with "M307 H1 F50" in the config.g now. (for the PT100 you already suggested that to me a long time ago )
I cannot judge if this helped but maybe a little bit (at least psychologically) If asking after powerup with M307 H1, it throws back 50Hz, so this should be working now. (Though I have the feeling it got louder now, but hey, that is the price I guess)
50Hz for the fans would be too low I guess, so would multiples of 50Hz be of any benefit for the fans then regarding the noise-issues on the PT100, e.g. 100Hz or similar, because judging by this post here https://forum.duet3d.com/topic/5248/maximum-frequency-of-pwm-fans/5 I have the option to have low frequency with my current 2-wire-fans OR get 4wire-fans and rewire them...
-
-
Your fans may be noisy at 50Hz, but you could try 100Hz or 200Hz.
-
Are you considering voltage-dimming on the duet3 or maybe a daughter-board of duet3? Doing the electronics yourself would be a lot of work it seems, but you could hack (although very inefficient) a resistor-bank (like on those high-end-audio-gear but for sure to inefficient and costly - I am sure you know better than me) or (alternative-)use e.g. LED-drivers like the "recom RCD-24/PL", that I played with a long time ago on a LED-project that allow PWM-/Voltage-/combined-dimming... just do not know what they would do to a fan ( (?) would have to check... for sure you can judge better than me)
- but I do not know (yet maybe never) enough about electronics to sufficiently be able to write something meaningful here -
Since you already leaked the information that you consider a 4-pin-fan-port on some new board maybe, that is maybe enough for me, and since I have 1 always-on-fan free (1 is used to cool the mainboard) I will try maybe the trick from the other post
At least learned something: If going so far as replacing also the heater and fan cable that are close to the PT100, at least for the fan will get a (TP of course) 4-wire-cable to be able to sooner or later fit a 4-pin-fan there -
On my delta I have a Smart Effector with PT100 sensor and 8 core unshielded cable from the Smart Effector back to the Duet, which includes the 4 PT100 wires. In the same bundle (which is 500mm long) is another 8 core unshielded cable that powers the hot end heater and 2 fans. I have never had a problem with the reading from the PT100.
Stepper motor cables are much more likely to cause interference.
-
@dc42 said in PT100 better wiring and software M305 settings:
On my delta I have a Smart Effector with PT100 sensor and 8 core unshielded cable from the Smart Effector back to the Duet, which includes the 4 PT100 wires. In the same bundle (which is 500mm long) is another 8 core unshielded cable that powers the hot end heater and 2 fans. I have never had a problem with the reading from the PT100.
Stepper motor cables are much more likely to cause interference.
Yeah - I am cursed I guess... If the new PT100-sensor arrives mid of the week and the old one was the problem, the company that makes them owns me one for free (happened before it seems: https://forum.duet3d.com/topic/4966/highly-erratic-temperature-readings-above-certain-temperature/7)
Will also check this: https://forum.duet3d.com/topic/252/spurious-heater-faults-and-how-to-avoid-them/37
But to be honest with all those little tweeks from the last weeks the spikes are now so erratic and seldom, that a print almost never fails, just working on the "almost" now I am definetly over 90%, maybe 95% and I consider my job done if one out of 100 readings is erratic... with
The lower frequencies like 50hz were actually the opposite of beneficial, I am back at multiples of 50, around 300 now, and that is also what you can see in the screenshot of the auto-PID-tuning (with lower frequencies it looked much worse). With "M570 P9" it works fine, just would like to lower P9 to P7 or so
disabling unpopulated steppers and fans did not do any change (assumed it wouldnΒ΄t ) could you give me a hint how to disable the unpopulated 2nd heater for now, if you do not do that already in your firmware I guess EDIT: found it, "allow the PID controller for a heater to be disabled by setting the A, C and D parameters to -1" but as you said, it didnΒ΄t change anything
-
Unused heaters and extruders won't generate any interference, until you command them to turn on.
-
Relief-time: The spikes where because of a bad connector! Beside of electrostatic-discharge-triggered-spikes when e.g. calibrating the z-offset while interfacing with hand (wearing the wrong shoeds or shirt) with the print-head I had no more spikes so far -> and when doing that whoever does it could wear gloves if it should be really a problem.
Now will check if I can revert back to the old switching-power-supplyEdit (a few days later): Just remembered that I had a test where I removed all cable but the PT100 and still the 2000C was there -> Since I vacuumcleand the thing the last days and found a little metal-debris from the work on the gantry I rather thing there where some fine metal-flakes that were responsible for the whole problems.
-> What I learned: There is a reason why usually the electronics is not mounted underneath a gantry which is made of metal but rather at the "back", because when you work on the metal the chances are smaller that debris "falls" into the electronics-bay. -
@dc42 said in PT100 better wiring and software M305 settings:
Unused heaters and extruders won't generate any interference, until you command them to turn on.
Already thought of it to be that way (Just had to raise the issue for me in some way)
-
O.K.: Switched back to the old power-supply and it also works. Yeah! ! (And because of perfecting the cables against EMI even with neither of the two I have now extensive ripple or noise in the temp-sensor-signal).
But now I experienced a new behavior which puzzles me: With the old bad connectors and those "shorts/2000C" every 30 seconds at least with the better daitron-psu it printed just fine. With the new behavior of the printer being that there is maybe a "short/2000C" every 20-30 minutes or so - yep still having some sort of loose connector on the printhead because this only happens if the thing is moving - , it immediately pauses the print (which of course is a desired behavior for sure)Just in my case I am leaving town soon having to finish the job and do now want to touch the wiring another time (also the cables are getting shorter and shorter to fit new connectors...). Long story short: Is there a workaround-way via software if there is that "2000C" every 20/30 minutes with something like "M570 H1 P20 T2000" (I know this is not how it is intended, but I already more or less have an agreement with them to touch the whole wiring again next year for a duet3-swap then )
-
I've been looking at how we might reduce the sensitivity of PT100 sensors to interference. So I wrapped the PT100 wires around the Y stepper motors wires of my bench setup, and set up a GCode file to do continuous Y stepper motor movements at 2A current. But the reading from the PT100 remained rock steady. So I don't understand why a number of users have reported temperature spikes when the motors start moving.
-
@dc42
Thanks so much about taking us/me serious. I have a couple of ideas why everything is like it is:- metal-debris: In my case there was metal-debris in the open lower "bay" which also houses all the electronics, I learnend now the hard way why electronics should not be underneath the gantry with open top, when you are still working on your metal-gantry or even weeks later after working on it when it wasnΒ΄t cleand perfectly... vacuum-cleaning helped (and checking from time to time with the (mobile-phone-)torch/led if something glitters in the electronics-bay
- loose connectors: I am sure in the huge build-up I made for the local artists here the long cables can pull with quite some torque on one or both of the ends, why strain-relief becomes a very important thing, so that not over time or while print-head is moving in a print connectors start to widen over time or the crimped side of the connector starts to loosen... I thought I was smart to take cables with an aditional flame-retardant layer, but so they quite thick, donΒ΄t know if I would do that anymore that way but rather buy one thick flame-retardant-flexible-tube where I put all cables for the printhead into...
With all that said: I am too young and studied stuff too far away from that to not have to have that learning-curve. So in a sense you - meaning you - become victim of your success with your very good pcb and support because more and more novice users - like me - try to use it in a maybe too professional intention while not having learned the necessary precautions...
So how to proceed with people like me:
Since I can understand if you do not like users to be able to totally disable all faults permanently for all heaters because it would be unresponsible to have some young kid burn down the printer and maybe even more because of it, how about a stepped safety/precaution:- For people that know how to make connectors/cabling and to avoid metal-debris, have the full security-features like they are now or even better (default setting)
- for the rest, maybe offer more way to loosen even more than now the boundries of M570 by widening amount of short error-persistency: So if there is a short only a millisecond or so only every x minutes, it can be ignored - at least in my case with a metalgantry printing on a metalplate. If the short is more permanently like more than x seconds with a variable to set this would be perfect (I doubt M570 Px is doing exactly what I am describing here?) there might be a more severe problem... and it should throw a fault... so somehow differentiate between a temporary problem and a more severe permanent short to "high"/"low".
Oh and also maybe good info for the next iteration of the pt-100-board: I hooked up a second pt100 just like it came (out of the box) putting no crimp or connector or whatsoever on it to be sure that I do not change anything. Surprise, surprise. If with the old connectors (changed now) there was a heavy spike, even this second pt100 sitting near the pcb had a spike... that way I knew I did something wrong with the connectors on the cables or so because those "shocks" must have been so heavy the "spark" reached from one pt100 to the next one or it might even come via the pcb.
Since avoiding after each connector to make a test but rather redo all connectors and starting up the duet, I cannot say which connector was the worst, just that definetly it was my fault so thank you even more for your help
EDIT: Ah - a friend of my suggested the following: Since it is possible in config.g to hook-up additional virtual sensors -> Why not be able to config another virtual heater-sensor optionally which shows the raw-data of the temperature-sensor! That way when wiggling on a specific cable I might have a clue which cable/connectors to track down without borrowing an oscilloscope and learn how to use it...
EDIT2: Spontaneous idea e.g. Within M570 an additional variable like Fnnn with F0=cancel print even with non-persistent but beyond threshold heater fault F1=pause print with non-persistent but beyond threshold heater fault F2=only issue permanent M117 message but keep printing with non-persistent but beyond threshold heater fault -> what is persistent and non persistent could be defined within M570 Pnnn/Tnnn variable?
I gues in this scenario F2 is too risky? Or would this interfere with the M143 Annn-set? Better to put it there? How to correlate M570 to M143?EDIT3: Will check PCB soon, hopefully saturday if any connector has gone loose
EDIT4: My poor qualification for those connectors with special crimps is why I asked some time ago for those simple (round-crimped) push-terminals on the pcbΒ΄s that wago, phoenix-contact and the taiwanese company that I forgot the name of (JVC) have in their portfolio. But that said/written, I could understand that you cannot choose your connectors by the poorest performing customers
EDIT5: One thing for future that could be beneficial for next iteration boards: Of course electronics on pcbΒ΄s is miniaturizing more and more, but the connectorΒ΄s on the user-side/interface-side could still be big & have a decent distance between each pin (2,54mm...) for not so talented users like me to make sure when I "assemble/make" that connector to my cable the possibility of only one fine "metal-hair" of the unisolated cableends of one pin to the next pin within one connector, has a low possiblity to touch each other because they are well separated. Also I start to hot-glue all connectors when they are assembled, that because of movement, they cannot become loose over time. Just one other fine detail... I can see the problem that too big connectors take up too much space on the pcb
Oh and EDIT6: One major problem was my own "home-made" cable to the paneldue. Since that cable is 3meters long I bought one with ca. 0,5mm^2 diameter and very good shielding ... and it works of course ( ) but I was not carefull enough with those connectors and have to redo them definetly (at least there is ca. 30cm still too much cable so I can chop off another bit and redo them...) When I unplug it 99.9% of all spikes are gone, only that 1 every half an hour or so. If I can find that last connector I am not sure - rather I gamble on your next firmware-update I guess
-
Hello
Please, is there any recent advice to retrofit capacitors on the PT100 daughterboard because of H1 heater faults ? I have such a PT100 daughterboard bought during 2019 along with Duet3d wifi and Delta Smart Effector+PT100, and am having my share of H1 faults.
Regsrds
-
@mihaitintea maybe this'll help https://forum.duet3d.com/post/102266