Piezo20 probe and piezo kit now available
-
I see something in your video which might be a problem or not, I can see some nuts between the top and bottom part of the module. These might be an issue. The idea is that the top part which has the printed groovemount, these holes need to not bind to the screws, the lower part of the module prints with holes which are 2.8mm so your can tap m3 screws into them.
The disc needs to be able to be squeezed between the two parts of the module. Its only 0.2mm but unless the module can easily compress you might not be getting a full signal.
If you take it off and change the assembly, reassemble it and before you mount it wire it up and make sure the led changes on the slightest tap on the bed holding it in your hand.
Make sure it looks like this assembled
And ensure the solder pads on the disc sit in the recess in the flange on top of the lower part. -
At some point I am going to do an assembly video for youtube.
-
I setup the resistance to 650 (my multimeter is at 2000k scale), but it's still the same.
I've spent more time levelling my bed (never was so well levelled as per Duet!), and I've observed that in some points the touch is more gentle (the pressure upwards is less noticeable), the point that seems to be the best is the front right corner, meanwhile other points (even those quite near the screws, so is not because of the screws "pushing") the hit is the same as before.
However, the bed levelling after homing Z in the corner or in the middle of the bed is more or less the same:
Homing at X285 Y5
Homing at X150 Y150
I had the nuts there as I had problems with the printed parts (it warped so the bottom is not perfectly flat), as it seems my level is much better now, I'm going to print another set of parts and will disassemble the hotend tomorrow to remove the nuts.
I had some doubts during the assembling, mainly with the pressure I should put between the parts that holds the piezo disk (at the beginning it seems that it was too close and the piezo didn't trigger at all), so a video will be much appreciated :).
Anyway, thanks a lot for your answers!
Regards
-
Okay definitely print the parts without warping, its not easy, some I print warp, I have to discard them.
The level of preload is difficult to settle on. You need the unit to be firm. The piezo can function almost as a microphone so even quite high preload is not a problem.
-
They will work in PLA OR PETG, I just use ABS for its good intermediate properties, i.e. stronger, better used around hotends, (but then if your hotend fan and heatsink cannot keep the heat of the hotend away from the parts holding it something is wrong) less brittle so will last longer.
-
I'm printing them in PLA for now, as it's easier, and the temperature I don't think is a problem (I've been using the groovemount in PLA for a long time without issues), but I plan to re-do them in PETG once I have it properly working.
I've printed a set during the night, and 2 of 3 parts came out nicely, once was a mess with the warp (sigh). I will check the offset I'm setting now (I think that as in some points is hitting harder than in others, this is affecting the offset). I will reprint it alone once I get home.
Anyway, what really bugs me is why in some points the touch is barely noticeable, and in some others it press the hotend upwards in a way that is easy to see it… initially I thought it was because near the points where the bed is attached to the frame (the screws) the bed is more robust, but I've tested it in other points near screws and you can see it pressing there too, and the bed structure is quite tough, so I'm running out of ideas, I hope the change of the mount helps fixing this :(.
Cheers
-
Might be worth a skype if it doesn't work I am quite keen to see what the issue might be.
-
Videos are now online starting with drilling a piezo and continuing through how to build a piezo 20 and finishing with how to tune the PCB.
-
I just watched the videos about 10 minutes after you uploaded them… and I found my problem... I was mounting the piezo the other way around!!
So in your videos is fairly clear that the piezo is in contact with the hotend mount, meanwhile I assumed that the piezo should go inside the whole (correct) and that the hole should be looking up, sandwiched with the top part of the groovemount (incorrect!!).
I'm disassembling now everything as finally I got my parts printed, and I will put together in the right way... and I'm impressed, even doing it wrong, requiring much more force to push it upwards to make contact, it actually worked!
Thanks for your videos, I will keep you updated
Regards
-
Ok, now I'm getting closer…
I've installed everything again, and I've found something interesting when I do the homing, maybe I'm doing something wrong, hopefully DC42 may be able to throw a bit of light here...
This is my homegall code:
; Relative positioning
G91; Lift Z
G1 Z5 F6000; Home X
G1 X-305 F1800 S1; Go back a few mm
G91
G1 X5 F6000
G90; Move slowly to X axis endstop once more (second pass)
G1 X-305 F360 S1; Home Y
G1 Y-305 F1800 S1; Go back a few mm
G91
G1 Y5 F6000
G90; Move slowly to X axis endstop once more (second pass)
G1 Y-305 F360 S1; Absolute positioning
G90; Go to first bed probe point and home Z
G1 X255 Y5 F6000
G30; Uncomment the following line to lift the nozzle after probing
G1 Z5 F100With this code, first the X axis is homed, then the Y axis, then X and Y moves to a position where I know the mesh will stop, and do the G30 (Home Z) and then moves Z to 5mm. Ok... but, what if I removes the lift of the nozzle...? then Z will stop at the point where it touches the bed... and it does, but... surprise! Z shows 0'67 height, and that is like... WTF? You just touched the bed and you're sitting there, why you say you're at 0'67mm??
Then I tried saying the board that the point is 0, (G92 Z0), and in that moment, the web says "Yep, Z is 0", cool... lets do a mesh leveling... wow, now it touches really gentle, it doesn't move upwards at all, but... Surprise again! The bed is quite well leveled but... is below where the board thinks it's 0!
Now is where I'm completely lost, I guess I've something wrong in my config, but I cannot find what it is…
BTW, after homing I've executed a few G1 Z5, G30 S-1 and this are my results:
2:34:08 AMStopped at height 0.086 mm
2:34:05 AMStopped at height 0.080 mm
2:34:02 AMStopped at height 0.085 mm
2:34:00 AMStopped at height 0.083 mm
2:33:56 AMStopped at height 0.083 mm
2:33:53 AMStopped at height 0.078 mm
2:33:50 AMStopped at height 0.075 mm
2:33:47 AMStopped at height 0.072 mm
2:33:44 AMStopped at height 0.068 mm
2:33:41 AMStopped at height 0.060 mmI've adjusted the V1 to 810MOhms, and the V2 to the point it should be, but I think I still need to play around a bit with it... higher resistance is more or less sensitive? I'm not sure...
I'm quite close!!
Regards
Edit:
I saw you all are using the M558 with Z0, but this means we're not using the probe for homing Z... why?
Anyway, I tried M558 with Z0 and Z1 and after homing, Z shows 0.70mm in both cases... -
I am interested to give this a go, when will the drop in z-probe be back in stock?
-
Okercho - make sure you know your Z-offset, after doing G30, do a paper test and see where the nozzle really is, and have entered it in G31 in config.g it will be a small negative number i.e. -0.1, -0.15, -0.2.
My solution to the grid level problem, is home Z (G30) at bed centre, then run G29. You are getting a flat bed just the system thinks its all too low.
If you have the module assembled and its giving sensitive triggers please do not adjust it any more the rest is all in the firmware now. You wont get a different grid levelling result adjusting the sensor. Once its working its zero maintenance.
higher vr1 resistance is more sensitive
Jackal - I've got some piezo20 PCB's if you wanted to print a module and add some screws as in the videos, go to precisionpiezo.co.uk and send me a message.
-
Okercho, the Z height that is set when the probe stops in a G30 command is the trigger height defined in the Z parameter of the G31 command in config.g or config-override.g.
-
I've found the issue!!
I thought that the order in config file was not that important, and I don't know where I got this, but if I have my probe config like this:
G31 X0 Y0 Z0 P100
M558 P5 I1 F200 H3 R2 X0 Y0 Z0
M557 X5:300 Y5:300 S50 ; Define mesh grid
When the homeall is executed, Z reports 0.70mm heightHowever, if I have this (M558 and G31 swapped):
M558 P5 I1 F200 H3 R2 X0 Y0 Z0
G31 X0 Y0 Z0 P100
M557 X5:300 Y5:300 S50 ; Define mesh gridZ reports 0.00 height and now the bed levelling is the expected one:
I guess that G31 asume some offset by default (0.70 was what I got) if M558 is not configured before with the type of probe… Anyway, now I can finally start doing printing test :D.
Thanks a lot DjDemonD and DC42!
Regards
-
Yes the M558 sets up the type of probe and probing behaviour, the G31 defines the probe offsets and (oddly since it would make more sense for it to be in M558) the threshold (or debounce) P value.
Glad you've got it working.
-
After a few prints, a bit of feedback.
So far, I'm really really happy about how the sensor works (I'm checking the website periodically for stock, as I will probably get another one and a friend is willing to get one probably :P). The groove mount is really strong, I'm not having wobbling issues so far, and the way the sensor works is just… awesome, although I'm still trying to find the "sweet point" in the config to ensure repeatability (more about this below).
A few thoughts:
Good Things
- The sensor is really sensitive, I'm testing a new surface in PC (check Whitewolf post for more info), and the PC sheet is not flat, but the sensor detected it (before I even noticed... I saw it in the image after the mesh leveling, and when I checked the surface it was as the sensor said)
- A really good thing I like the most, is that DjDemonD says the sensor is the nozzle, but that's not "true", the sensor is the entire hotend, so for example, I had a bulldog clip for the PC sheet, and I put it by mistake in a place where the nozzle was doing the probing for the mesh... with an inductive or the optical sensor, this may be an issue if the sensor is in the other side (for example, sensor in the right place, and the clip in the left), as the heatblock/nozzle will crash with the clip much before the sensor detects the surface, potentially creating a mess... In this case, I just noticed a glitch in the mesh image, and thought that the sensibility was still too high, so I lowered it and repeated... and then I observed that the heatblock touches the clip before the nozzle reaches the surface, and assumed the bed was there, reported it in the mesh, and nothing else... accident avoided!
*No matter what surface you're using, you're ok, I started with Buildtak (the one I had problems with the IR sensor), and I've spent a lot of time leveling it, now I'm using the unleveled PC sheet, and I just had to do... nothing (well, to be honest, I've changed the point where I check the Z to the flattest point of the sheet, to try to have a realistic point for the bed position)
Bad Things
- Sometimes is a bit too sensitive/Is a bit hard to find the point, I'm still trying to find the point, and I've added 2-3 seconds delays in the mesh leveling to try to avoid the sensor triggering when it shouldn't, although for the Z homing I'm still getting this issue when the head is traveling from a far point to the Z homing point.
- My first layer is sometimes a bit more squished, others a bit less, my suspect is that my nozzle is not always same clean at it should, the temperature may be affecting a bit, and that I should remove a bit of sensibility. I'm ensuring the nozzle is really clean before each print, and I'm trying to do the mesh leveling before each print at the same temp (BTW, anyone using S3D? I'm using a crappy script executed after the slicing process that looks for the M104 for the hotend, and adds with SED the code for setting the temperature of the leveling process to 120 degrees, as I couldn't find any other way to do it automatically in S3D)
- You will loose a bit of Z height, but honestly, I think is well "paid" compared with the benefits the sensor is giving.
Cheers!
-
Wonderful feedback thank you.
If you dont mind I might it on the reprap forum which is our main support thread for others to view/learn from.Loving all the positives.
To address the bad bits
-Try reducing the sensitivity a little bit, using VR2 just turn it a tiny bit past the point where the triggered LED goes out. Try a few different probing speeds. Some get better performance at 240mm/min others as high as 420-480mm/min. You shouldn't be troubled by triggering during moves, unless something in the firmware isnt set up right as the firmware isnt looking for a Z-trigger during moves it should ignore it completely, only looking for it when probing (an extra LED comes on on the duet when a probing dive takes place, I believe this is the MOD signal which is the fourth, unused in most cases, pin in the z-probe connector.- My recommended nozzle clean is to heat bed to 1st layer temp, then nozzle to 130 deg C, this enables you to remove any residual plastic with side cutters. There should be no ooze at this temp. Any that remains should be compressible enough to not affect your second reading as it gets squashed out of the way on the first reading. You can setup the firmware to probe twice on a probing point (search for it on the forum here) and then use second reading?
-Check your bed is firmly attached and nothing is "wobbly" I'm sure its not but were only talking 0.1-0.2mm.
Will have some more in stock soon. Looking into way of getting PCB's in bigger numbers now, seems there is enough demand.
- My recommended nozzle clean is to heat bed to 1st layer temp, then nozzle to 130 deg C, this enables you to remove any residual plastic with side cutters. There should be no ooze at this temp. Any that remains should be compressible enough to not affect your second reading as it gets squashed out of the way on the first reading. You can setup the firmware to probe twice on a probing point (search for it on the forum here) and then use second reading?
-
Thanks for the answer, I'm following the reprap thread too, so I can post it there too if you want to.
I'm doing the test with the nozzle at 120, although I think I will need to increase it, for PETG I think is too low. I will look for the 2 readings stuff, and play a bit more with the sensibility, I'm not worried about that, I've reduced the false triggering almost to zero.
Cheers!
-
Has anyone switched from under bed FSR setup to under bed piezo?
If so was it a major improvement over the FSR setup? -
I'm a little biased but if you consider going from 50-100g of force to trigger with FSR's (I used to have them), to 10-15g with piezo, then it must be an improvement.
However when it comes to the best approach for a delta I would say fix the bed rigidly, use the hotend based piezo probe. The results speak for themselves, I get 0.007 deviation when auto-calibrating, and that's probing 64 points, to ensure it wasn't just a lucky result.