Help with pulse-generating Filament Sensor
-
A pulse generating sensor doesn't distinguish between forward and reverse motion, so position cannot be inferred. I'll check why the firmware prints a position.
-
I've checked the code, and I confirm that the "current position" has no meaning for a pulsed filament monitor. I'll remove it from the report in the next firmware build.
-
Ok, so when I try to run it with just those lines. I get little movement error. This is why I think that line postion has something to do with the error. Because it expecting to get the position data but its not. This is the last calibration data that I got. I guess until you fix it. I wont be able to use it.
Pulse-type filament monitor on endstop input 4, enabled, sensitivity 6.650mm/pulse, allowed movement 60% to 140%, check every 3.0mm, current position 0.0, measured sensitivity 12.004mm/pulse, measured minimum 0%, maximum 111% over 24.0mm
-
When I change the E to 7mm distance I get a lot longer print time before it errors out before it wants to give me the problem with no little movement. So I guessing I might be close to the right settings maybe?
M591 D0 C4 P7 R60:140 A1 L6.65 E7 S1 ; pulse-generating sensor drive 0 Connected to C4 input, 40% to 130% tolerance, 7mm detection length M591 D0 ; display filament sensor parameters for extruder drive 0
This is the last one M591 D0
Pulse-type filament monitor on endstop input 4, enabled, sensitivity 6.650mm/pulse, allowed movement 60% to 140%, check every 7.0mm, current position 0.0, measured sensitivity 6.886mm/pulse, measured minimum 47%, maximum 104% over 185.9mm
-
@T3P3Tony said in Help with pulse-generating Filament Sensor:
M591 S0
To get the Calibration data better do I just run M591 S0 ? I do I run the full M591 command with the S0 on the end like I had and then just check it with M591 D0 command.
-
@kordris said in Help with pulse-generating Filament Sensor:
@T3P3Tony said in Help with pulse-generating Filament Sensor:
M591 S0
To get the Calibration data better do I just run M591 S0 ? I do I run the full M591 command with the S0 on the end like I had and then just check it with M591 D0 command.
See https://duet3d.dozuki.com/Wiki/Duet3dFilamentMonitor_LaserVersion#Section_Calibration. It's written for the laser filament monitor, but it's the same for your filament monitor.
As it appears that your sensor only generates 1 pulse per approx. 6mm of filament, you will need to set the measurement distance (E parameter) several times greater then 6mm in order to get consistent results.
-
@dc42 Is the position data going to cause any problems or is that just going to just unrelated till you fix in the next firmware fix? I try to set the pulse to higher number. But I kept getting a error about every 5 mins telling little or no movement when I tried to enable the sensor with the S1. So Im guessing I still don't have something just right.
-
No, the position data being reported as zero shouldn't cause any problems. However, I can't guarantee that the code is entirely correct, because it was adapted from the code for Duet3D laser and magnetic filament monitors, so it isn't well-suited to low-resolution sensors. With a window of 60 to 140%, my guess is that you will need at least 20mm measurement length, perhaps even 25mm. A wider window will allow a shorter length, but even then the measurement length should be more than twice the extrusion length per pulse.
-
@kordris would you like to share with me how you plug the cable of the bigtreetech smart filament sensor with duet?
-
@lifeform not sure if you figured out the wiring but if you trace the wires to the sensor, there is a 4 pin connector with only 3 wires. the single wire on the end with no wire next to it is Vin. the middle wire is signal and the wire right next to that is ground.
Back to the original topic, has anyone figured out the correct mm/pulse for this sensor?
-
Hi guys,
Has anyone managed to properly set the Bigtreetech smart filament sensor to Duet meanwhile?
I am just finishing my build with Duet 2, and I have connected the sensor - but still haven't done any configuring.
Maybe the settings used in Marlin 2.0 can help?
So if anyone of you managed to set it correctly - please help.
Thanks!
-
-
Thanks for the answer.
I've tried it yesterday - but it seems that Duet is not recording any data from the sensor.I configured the sensor as following, just to log data when printing :
M591 D0 P7 C"^e0stop" L0.07853981634 R90:110 E3 S0
but it did not receive any data.
Any ideas on what I can try is highly appreciated.
Thanks again
-
@omni said in Help with pulse-generating Filament Sensor:
S0
S0 is disabled, is it not? Try S1 maybe?
-
@Phaedrux
Hi Phaedrux,
Thanks for the reply.Yes, it is disabled - meaning it does not stop the process of printing, but it should be receiving and collecting data.
It's because it only works when the printing from the SD card starts, but since it is not gathering any data if I choose S1 it would stop the print.
I just wanted to see if DUET is receiving anything - and it seems it is not. -
@omni Sorry. I'm not really failiar with that sensor. Perhaps best to start a new thread with your issue rather than tack on to this older thread.
-
Well it was related to the same sensor and same problem, that is why I thought it was best to just follow up on that - in case someone who was following it already resolved the problem... But thanks anyway, hope I will find a solution...
-
@omni A new post will get more visibility for your issue, especially with a descriptive title.
-
@omni said in Help with pulse-generating Filament Sensor:
Bigtreetech smart filament sensor
I'm waiting on that one for a while but stuff stopped arriving so I gave up already so I'm not 100% sure, but looking at the MARLIN conf it looks like it does not generate pulses but the "smart" in the name means it internally looks at encoder data and instead of sending encoder data it calculates if / when filament is run out and switches the signal on/off so it behaves like simple switch?!?!?!? Not sure but that's what it looks like from what I read. Opening it up and checking out the electronics seems to be the only way to know for sure and hacking it to work as a pulse generator should be super simple - taking A or B pin of the encoder directly as signal pin should bypass the "smart" part inside and let duet get all the data it needs (pulses) directly from encoder.
-
@omni @kordris I got mine working with the following settings:
M591 D0 P7 C"ystop" L7 R80:115 E8 S1
What caused problems with my setup was that I've used an endstop pin from an axis where sensorless homing was enabled. Switching to an endstop without sensorless homing solved it for me.
I am using a third party controller board with a STM32 chip structure. I don't know if that has any impact on the error that I had but this might also help you if you are using an original Duet board.