Laser sensor - no celibratiuon data?



  • Hi,

    My laser filament sensor do not "generate" calibration data:

    M591 D0
    Duet3D laser filament monitor v2 on pin io3.in, enabled, allow 40% to 120%, check every 3.0mm, version 2, quality 223, brightness 61, shutter 128, no calibration data
    

    Config.g

    M591 D0 P5 C"0.io3.in" R40:120 E3.0 S1 
    

    The led is flashing green while I print and green and a single red flash appears when the filament is not moving.

    I guessed that I should use "io3.IN", am I right?

    Cheers, Chriss


  • administrators

    To generate calibration data, run a print from SD card.



  • @dc42 said in Laser sensor - no celibratiuon data?:

    To generate calibration data, run a print from SD card.

    From the SD card? Are you sure? I have a raspberry connected to the duet 3 and I upload the g-code directly from the slicer to the printer.



  • @Chriss he means run a print from DWC. Streaming gcode over USB does not support the filament monitors.
    It does not report any data when not printing.



  • @jay_s_uk

    Sorry, I do not get it... 😞 I do not use USB, I configured my slicer to print on the printer via Network. Should that make any difference to the filament sensor? That makes no sense to me....


  • administrators

    @Chriss said in Laser sensor - no celibratiuon data?:

    @jay_s_uk

    Sorry, I do not get it... 😞 I do not use USB, I configured my slicer to print on the printer via Network. Should that make any difference to the filament sensor? That makes no sense to me....

    Do you mean that you are printing via the Telnet interface? If that's the case then the slicer would have to monitor the filament status, because standard serial GCode protocols have no way of tell the sender that the print had been paused due to a problem, and where it will need to be resumed from (because buffered moves will have been skipped so as to pause the print as soon as possible).

    If you mean that you have configured the slicer to upload the file to the Duet and ten print it, then that is an SD card print, and calibration data will be collected while it is printing.



  • @dc42 said in Laser sensor - no celibratiuon data?:

    Do you mean that you are printing via the Telnet interface?

    No, I mean that I print via the "web interface", rest API? I do not know. I installed the Duet plugin for Cura and I told the plugin the IP of the duet. PrusaSlicer dos it similar.

    If you mean that you have configured the slicer to upload the file to the Duet and ten print it, then that is an SD card print, and calibration data will be collected while it is printing.

    Well well... I still do not get it. I think that I did not gave you all of the information: Hardware: Duet3 with a Raspberry attached. So there is no "sd card" beside the SD_card which is used by the rasberry to boot it's debian.

    I'm very sorry, I did not sleep for 30 hours now (not for the printer, other problems with my living making customer), my brain gets a little bit slow now. 😞

    Well, i have some g-code files in the "
    Jobs" section, I will try one of them as soon as the printer has finished his current job. I still do not get it.. it will be one of the last prints which I started via the slicer, I do not think that this will make any difference.


  • Moderator

    There is some confusion. When you upload a gcode file to the Duet through the web interface (or via slicer) it gets stored on the SD card in the Pi (or on the duet if you're not using the Pi.)

    The situation where the sensor will not work is when printing a file directly over a USB connection sending the gcode file one line at a time. You are not doing that so do not worry.

    Have you seen this?

    https://duet3d.dozuki.com/Wiki/Duet3dFilamentMonitor_LaserVersion#Section_Calibration



  • @Phaedrux said in Laser sensor - no celibratiuon data?:

    [...]

    You are not doing that so do not worry.

    Good, I stopped my worries. 😉

    Have you seen this?

    https://duet3d.dozuki.com/Wiki/Duet3dFilamentMonitor_LaserVersion#Section_Calibration

    Indeed, I used that howto to configure the sensor. I'm printing a file directly from the "jobs" menu, just to be on the save site. 😉

    M591 D0
    03/11/2020, 03:55:53	M591 D0
    Duet3D laser filament monitor v2 on pin io3.in, enabled, allow 40% to 120%, check every 3.0mm, version 2, quality 224, brightness 53, shutter 133, no calibration data
    03/11/2020, 03:55:02	Finished printing file 0:/gcodes/CFFFP_Stringing.gcode, print time was 0h 20m
    03/11/2020, 03:52:33	M591 D0
    Duet3D laser filament monitor v2 on pin io3.in, enabled, allow 40% to 120%, check every 3.0mm, version 2, quality 223, brightness 58, shutter 127, no calibration data
    03/11/2020, 03:49:22	M591 D0
    Duet3D laser filament monitor v2 on pin io3.in, enabled, allow 40% to 120%, check every 3.0mm, version 2, quality 223, brightness 58, shutter 127, no calibration data
    

    I use this indirect housing for the sensor:
    https://www.thingiverse.com/thing:3673768

    I can see that the ball bearing is rotating slowly while the printer prints.

    And I think that the sensor detects the filament. The led is flashing with a high frequency and only green. A lot of green and single red flash if the filament is not moving.

    I rechecked the wiring: I think that the 3,3V and GND wires must be OK, because that should be the minimum to have a flashing LED. 😉 The "OUT" is wired to "io3.in".
    Is there any way to debug the signal on that pin? Can I enable some debug logging to see that there is traffic on the "in" pin? Or should I use my oscilloscope? And what should I see there?



  • @Phaedrux
    I'm sorry that I have to bring this topic up again. I still have not figured out what is going wrong at my setup. Is there any way to make sure that that the data wire between the sensor and the board is working? Or what else could be wrong here?


  • administrators

    @Chriss, which version of RepRapFirmware are you running?



  • @dc42 said in Laser sensor - no celibratiuon data?:

    @Chriss, which version of RepRapFirmware are you running?

    Sorry, I have forgotten:

    Board: Duet 3 MB6HC (MB6HC)
    DSF Version: 3.1.1
    Firmware: RepRapFirmware for Duet 3 MB6HC 3.1.1 (2020-05-19b2)



  • @dc42

    Any other idea here? I plan to use two of the sensors for my new build. Should I order them and test with one of the new? Just to make sure that it is not a problem with the sensor?

    Cheers, Chriss


  • administrators

    1. Please confirm that the tool you are printing with uses extruder 0.

    2. Are you running in standalone mode, or with attached SBC?

    3. Please can you upgrade to firmware 3.2beta4 and try again. If it still doesn't work, post your complete config,g file so that I can replicate your setup.



  • @dc42 said in Laser sensor - no celibratiuon data?:

    1. Please confirm that the tool you are printing with uses extruder 0.

    Confirmed, I have only one extruder/tool at the printer.

    1. Are you running in standalone mode, or with attached SBC?
      In SBC (raspberry attached)
    1. Please can you upgrade to firmware 3.2beta4 and try again. If it still doesn't work, post your complete config,g file so that I can replicate your setup.

    Wow.... Yes... I will do that. Give me some time here please. I want to finish the current print first. 😉

    Sorry that I have to ask but I'm unable to find the docu:

    https://pkg.duet3d.com stable InRelease  
    

    to

    https://pkg.duet3d.com beta InRelease  
    

    ?

    In the meantime is here the config.g:

    ; Configuration file for Duet 3 (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 17:41:46 GMT+0200 (Central European Summer Time)
    
    ; General preferences
    G90												; send absolute coordinates...
    M83												; ...but relative extruder moves
    M550 P"Blimy"									; set printer name
    M669 K1											; select CoreXY mode
    
    ;; Drives
    ; XY
    M569 P0.0 S1									; physical drive 0.2 goes backwards - left motor
    M569 P0.2 S1									; physical drive 0.1 goes backwards - right motor
    
    ;Z
    M569 P0.3 S0									; physical drive 1.2 goes backwards - left motor
    M569 P0.4 S0									; physical drive 1.1 goes backwards - right motor
    M569 P0.5 S0									; physical drive 1.0 goes backwards - rear motor
    
    ; Extruder
    M569 P1.0 S0									; Extruder Motor
    
    
    M584 X0.0 Y0.2 Z0.3:0.4:0.5 E1.0				; set drive mapping
    M671 X-31.5:437.4:198.5 Y63:63:440 S30.0        ; Z-Level leadscrews at left (connected to E6(9)) and right (connected to E2) of X axis (S=MaxCorrection)
    
    
    M350 X16 Y16 Z16 E16 I1							; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z400.00 E420.00				; set steps per mm   M92 X80.00 Y80.00 Z400.00 E420.00
    M566 X900.00 Y900.00 Z12.00 E120.00				; set maximum instantaneous speed changes (mm/min)
    M203 X30000.00 Y30000.00 Z300.00 E1200.00		; set maximum speeds (mm/min) Z180
    M201 X500.00 Y500.00 Z20.00 E250.00				; set accelerations (mm/s^2)
    M906 X2000 Y2000 Z1000 E600 I30					; set motor currents (mA) and motor idle factor in per cent
    M84 S30                                         ; Set idle timeout
    
    ; Axis Limits
    M208 X0 Y0 Z0 S1                                ; set axis minima
    M208 X380 Y360 Z400 S0                          ; set axis maxima
    
    ;; Endstops
    M574 X1 S1 P"!0.io1.in"		;Induktions geber X1=low end    ; configure active-high endstop for low end on X via pin io2.in
    M574 Y2 S1 P"!0.io2.in"		;Induktions geber Y2=High end   ; configure active-high endstop for high end on Y via pin io1.in
    M574 Z1 S2													; Configure Z-probe endstop for low end on Z
    
    
    
    ;; Z-Probe
    ; BL Touch:
    M950 S0 C"0.io4.out"                        ; create servo pin 0 for BLTouch
    M558 P9 C"0.io4.in" H5 F120 T6000          	; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X0 Y30 Z2.12		                ; set Z probe trigger value, offset and trigger heigh
    
    M557 X10:370 Y40:370 P10:10                 ; Chriss - define mesh grid
    ;M557 X50:350 Y50:350 P3:3                   ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M557_Set_Z_probe_point_or_define_probing_grid
    
    
    ;; Heaters
    ; Bed
    ; Tune in with:  M303 H0 S110       (110=Temp) (M500 to save) 
    ; Show curren tsettings M307 H0
    M308 S0 P"0.temp2" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp2
    M950 H0 C"0.out2" T0 Q10                       ; create bed heater output on 0.out2 and map it to sensor 0 and Frequency (Q) 10Hz
    ; MOVED to  override M307 H0 A340 C140.0 D5.5 S1.0 V0.0 B0          ; disable bang-bang mode for the bed heater and set PWM limit
    M140 H0                                        ; map heated bed to heater 0
    M143 H0 S120                                   ; set temperature limit for heater 0 to 120C
    
    
    ; Hotend
    ; Tune in with:  M303 H1 S270       (270=Temp) (M500 to save) 
    ; Show current settings M307 H1
    M308 S1 P"0.temp3" Y"thermistor" T500000 B4723 C1.196220e-7  ; configure sensor 1 
    M950 H1 C"0.out3" T1                         ; create nozzle heater output on 0.out3 and map it to sensor 1
    M143 H1 S280                                   	; set temperature limit for heater 1 to 280C
    ; MOVED to  override M307 H1 A340 C140.0 D5.5 S1.0 V0.0 B0        ; disable bang-bang mode for heater  and set PWM limit
    
    ;; Fans
    ; Fan for the printed part:
    M950 F0 C"0.out9" Q500                       ; create fan 0 on pin 0.out9 and set its frequency
    M106 P0 S0 H-1 C"Part"                       ; set fan 0 value. Thermostatic control is turned off
    ; Fan for the Hotend:
    M950 F1 C"0.out8" Q500                       ; create fan 1 on pin 0.out9 and set its frequency
    M106 P1 S1 H1 T45 C"Hotend"                  ; P="set fan 1" S="value" H="Thermostatic control Heater No." T=" is turned on at 45°C"
    
    ; Fan for expansion case Always on
    ;M950 F9 C"1.out8" Q500
    ;M106 P9 S1 H-1
    
    
    ;; Tools
    ; Tool 0
    M563 P0 S"TooL0" D0 H1 F0		             ; define tool 0
    G10 P0 X0 Y0 Z0                              ; set tool 0 axis offsets
    G10 P0 R0 S0                                 ; set initial tool 0 active and standby temperatures to 0C
    
    ;; Filament Sensor          ##################### TODO
    M591 D0 P5 C"0.io3.in" R40:120 E3.0 S1  ; Duet3D laser sensor for extruder drive 0, connected to endstop input 3 (E0), tolerance 40 to 120%, 3mm comparison length, disabled
    
    
    ; Custom settings are not defined
    
    ; Miscellaneous
    M575 P1 B57600 S1							; Enable PanelDue
    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
    
    
    ; Configure the case fan:
    M308 S9 P"mcu-temp" Y"mcu-temp" A"mcu"        ; define sensor 9 to be mcu temperature
    M950 F2 C"0.out7" Q500
    ;M106 P2 S100 C"Case"
    ;M106 P2 S0 C"Case"				; Keep it off for now
    M106 P2 S1 L0.25 B0.5 H9 T40:60 C"Case"      ; cooling electronics space thermostatic on sensor 9 40 to 60C
    
    
    
    
    
    
    ; Enable the LED stripe and turn it off
    M950 F3 C"0.out6" Q500   ; LED on out6 ground on top pin, plus on 3rd pin from top (V_OUTLC1)
    M106 P3 C"LED" S0
    
    
    M501                                               ; load saved parameters from non-volatile memory (config-override.g)
    
    
    
    
    


  • Forget that:

    Sorry that I have to ask but I'm unable to find the docu:

    https://pkg.duet3d.com stable InRelease  
    

    to

    https://pkg.duet3d.com beta InRelease  
    

    ?

    I found https://duet3d.dozuki.com/Wiki/Getting_Started_With_Duet_3#Section_Updating_Duet_3_main_board_firmware in the meantime. 😞 Sorry....



  • @dc42 said in Laser sensor - no celibratiuon data?:

    1. Please can you upgrade to firmware 3.2beta4 and try again. If it still doesn't work, post your complete config,g file so that I can replicate your setup.
    02/12/2020, 13:37:16	M98 P"config.g"
    Error: M591: Filament monitor port must be on same board as extruder driver
    Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 245C
    Warning: M307: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 512C
    

    🤦

    I will solve the Error reported in row No. 2 before we start any further actions. I'm very, very sorry! I need to make much more use of "M98" before I open a thread here.

    Cheers, Chriss



  • @dc42

    Here is the easy way to reproduce the problem:
    Connect your extruder to your 3HC and the filament sensor to the mainboard and you will see the "problem".
    Connect the sensor to the expantion board and everything works as expected. 🤦

    02/12/2020, 13:59:39	M591 D0
    Duet3D laser filament monitor v2 on pin 1.io0.in, enabled, allow 40% to 120%, check every 3.0mm, calibration factor 1.000, version 2, quality 223, brightness 63, shutter 128, measured min 285% avg 333% max 500% over 14.5mm
    

    (Yes, I need to weak the min / max to work with the ball bearings but this is a other problem where I shall not need any help. 😉

    I think that you guys should mention that in the wiki page for the sensor. 😉 That will save other people a lot of time.

    Cheers, Chriss


  • administrators

    I have updated the documentation as you suggested.



  • @dc42

    from : https://duet3d.dozuki.com/Wiki/Duet3dFilamentMonitor_LaserVersion

    Connect the filament monitor to one of the IO_ connectors on the Duet 3 mani board or on a tool or expansion board.

    "mani" ? 😉

    Sorry...


  • administrators

    Thanks, now corrected.


Log in to reply