• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

IR Sensor Potential Fault

Scheduled Pinned Locked Moved
IR Height Sensor
irprobe
5
15
883
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    engikeneer
    last edited by 9 Feb 2021, 00:19

    Hello,

    I recently got a DC42 IR sensor to fit to my CoreXY and have been running into some issues which I suspect be down to the sensor itself, or could be me doing something silly.

    In essence I am getting poor repeatability between probing points, but very good repeatability when probing the same point multiple times. I use the A/S parameters in G31 and rarely need more than 2 probes to achieve 0.01 accuracy - all good. However, I often do bed autolevelling by probing two adjacent points near each lead screw, 5mm apart (the idea being that any issues with probe repeatibility are easy to see). I am finding that one of the pairs (usually my back leadscrew) often has a very big offset between the two probing values (like 0.2mm, even up to 0.5mm!). I have also seen the same thing when generating my heightmap.

    Please take a look at my config & bed.g in case there's anything silly I'm doing, but my theory is that the large capacitor on the board isn't sat flat - it's leaning over towards the left. Not sure how well you can see in these pictures...
    20210209_000017.jpg

    20210208_235949.jpg

    An example of what I've been doing. Running "Test auto Level points.g" twice back to back I get:

    G32 bed probe heights: -0.007 0.119 -0.154 0.266 0.095 0.011, mean 0.055, deviation from mean 0.129
    G32 bed probe heights: -0.008 0.126 -0.152 0.262 0.092 0.005, mean 0.054, deviation from mean 0.128

    Contents of the macro are as below (same as my bed.g but using G30 S-1 instead). You can see that it is points P0 & P1 and P2 & P3 that are quite different values but very are close on the bed and repeatable from one run to the next. If I keep running the printer and re-doing this routine, sometimes they suddenly agree and we're good to go but this is not repeatable/reliable.

    G29 S2 ; clear any bed transform
    ; autolevelling points near leadscrews
    G30 P0 X5 Y15 Z-99999 ; probe near a leadscrew
    G30 P1 X5 Y20 Z-99999 ; probe near a leadscrew
    G30 P2 X166 Y295 Z-99999 ; probe near a leadscrew
    G30 P3 X172 Y295 Z-99999 ; probe near a leadscrew
    G30 P4 X280 Y30 Z-99999 ; probe near a leadscrew
    G30 P5 X280 Y25 Z-99999 S-1 ; probe near a leadscrew and calibrate 3 motors

    At first I thought it was my build surface (I'm using Ziflex which has a tendancy to go shiny on areas that have been printed a lot), but I tried sticking blue tape down in the areas and got the same result. I'm confident from doing the paper-test that the two points are actually at a very similar height.

    Sensor was purchased from Ooznest on 9th Jan 21, though only fitted this week. Any thoughts? I can have a go at reworking the capacitor to seat it better if that might help?

    Running RRF3.2 & for completeness my config.g:

    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Sat May 04 2019 23:30:24 GMT+0100 (British Summer Time)
    ; General preferences
    M81 ; turn power supplies (PS_ON) off
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M669 K1 ; Select CoreXY mode
    ; Network
    M550 P"ODIN" ; Set machine name
    M552 S1 ; Enable network
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet
    ; Drives
    M584 X0 Y1 Z5:6:7 E3:4
    M569 P0 S0 ; Drive 0 goes backwards (x-drive)
    M569 P1 S0 ; Drive 1 goes backwards (y-drive)
    ;M569 P2 S0 ;z drive not used ; Drive 2 goes backwards (z-drive)
    M569 P3 S0 ; Drive 3 goes backwards (extruder0)
    M569 P4 S1 ; Drive 4 goes Forwards(extruder1)
    M569 P5 S0 ; Drive 5 goes backwards (Z1)
    M569 P6 S0 ; Drive 6 goes backwards (Z2)
    M569 P7 S0 ; Drive 7 goes backwards (Z3)
    M350 X16 Y16 Z16 E16:16 I1 ; Configure microstepping with interpolation
    M92 X160 Y160 Z3200 E861:821.1; E420.15:414.17 Z3198.158 ; Set steps per mm was E420.15:---
    ;call macro to define motor settings
    M98 P"0:/macros/00 - Printer Settings/Motor setup.g"
    M204 P2000 T4000 ; Set max print accels to 2000mm/s^2, travel to 4000mm/s^2
    M593 F48 ; set Dynamic Acceleration Adjustment to 43.5Hz
    M572 D0 S0.055 ; Set pressure advance factor for extruder 0
    M572 D1 S0.055 ; Set pressure advance factor for extruder 1
    ; Axis Limits
    M208 X-1 Y-18 Z0 S1 ; Set axis minima
    M208 X290 Y305 Z350 S0 ; Set axis maxima
    ; Endstops
    M574 X1 S1 P"xstop" ; X min active high endstop switch
    M574 Y1 S1 P"ystop" ; Y min active high endstop switch
    ; Filament Monitor
    M591 D1 P3 C"e0stop" S1 R40:140 L25.55 E6 A0 ; Duet3D rotating magnet sensor for extruder drive 0 is connected to E0 endstop input, enabled, sensitivity 25.55mm.rev, 40% to 140% tolerance, 6.0mm detection length, check only printing/extruding moves
    ; Z-Probe
    M574 Z1 S1 ; Set endstops controlled by probe
    M558 P1 C"zprobe.in" R0.2 H3.5 F350 T3500 A10 S0.01 ; Set Z probe type to effector and the dive height + speeds
    G31 P500 X0 Y-20 Z2.45 ; ; Set Z probe trigger value, offset and trigger height
    ; Heaters
    M308 S0 P"bed_temp" Y"thermistor" T100000 B3950 R4700 ;define bed temp sensor
    ; b3950 taken from https://keenovo.store/collections/frontpage/products/keenovo-square-silicone-heater-3d-printer-build-plate-heatbed-heating-pad?variant=8324021059639
    M950 H0 C"bedheat" T0 ;heater 0 uses the bed_heat pin, sensor 0
    M140 H0
    M143 H0 A3 S120 ; Set temperature limit for heater 0 to 120C
    M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.060000e-8 ; define E0 temp sensor
    ; https://e3d-online.dozuki.com/Guide/V6+RepRap+Firmware+Configuration/26?lang=en
    M950 H1 C"e0heat" T1 ; heater 1 uses the e0heat pin and sensor 1
    M143 H1 A3 S280 ; Set temperature limit for heater 1 to 280C
    M308 S2 P"e1temp" Y"thermistor" T100000 B4725 C7.060000e-8 ; define E0 temp sensor
    ; https://e3d-online.dozuki.com/Guide/V6+RepRap+Firmware+Configuration/26?lang=en
    M950 H2 C"e1heat" T2 ; heater 2 uses the e1heat pin and sensor 2
    M143 H2 A3 S280 ; Set temperature limit for heater 1 to 280C
    ; Fans
    M950 F1 C"fan1" ;Fan 1 uses the fan1 pin
    M106 P1 T45 H1:2 ; Set Fan 1 to run any time heater H1 or H2 is above 45C
    M950 F0 C"fan0" ; part cooling fan (Fan 0) uses the fan0 pin
    ; Tools definition
    M563 P0 S"Extruder 0" D0 H1 ; 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
    M563 P1 S"Extruder 1" D1 H2 ; Define tool 1
    G10 P1 X0 Y0 Z0 ; Set tool 1 axis offsets (set manually in slicer)
    G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C
    ;Heater fault parameters
    M570 H0 P5 T5 S0 ; Set heater fault params for bed. 5s anomoly, 5deg max temp deviation, timeout for print to be cancelled 0mins
    M570 H1 P5 T15 S0 ; Set heater fault params for Tool0 (Heater 1). 5s anomoly, 15deg max temp deviation, timeout for print to be cancelled 0mins
    M570 H2 P5 T15 S0 ; Set heater fault params for Tool1 (Heater 2). 5s anomoly, 15deg max temp deviation, timeout for print to be cancelled 0mins
    ;Firmware retraction settings
    M207 S1.8 R0 F5500 T4000 Z0 ; Retract 4.0mm (noextra restart) at 3900mm/min with 3300mm/min unretract. No Z hop
    ;Set CPU temperature offset
    M912 P0 S-9.3
    ; Automatic saving after power loss is not enabled
    ;Bed mesh settings
    M557 X5:280 Y10:280 P20 ; Define mesh grid
    M376 H15 ; Taper mesh compensation off over 15mm Z-height
    ; Auto Bed Leveling setup
    M671 X346:169:-38 Y-5:380:-5 S2.5
    M501 ; read temperature model parameters from config-override

    E3D TC with D3Mini and Toolboards.
    Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
    i3 clone with a bunch of mods

    1 Reply Last reply Reply Quote 0
    • undefined
      alankilian
      last edited by 9 Feb 2021, 01:01

      That capacitor is the thing that blocks light from leaking from LED to detector.

      Try adding something that will block the light. Cardboard or something like that. Around the capacitor.

      SeemeCNC Rostock Max V3 converted to V3.2 with a Duet2 Ethernet Firmware 3.2 and SE300

      1 Reply Last reply Reply Quote 0
      • undefined
        Phaedrux Moderator
        last edited by 9 Feb 2021, 05:01

        Any change in ambient lighting conditions?

        Z-Bot CoreXY Build | Thingiverse Profile

        undefined 2 Replies Last reply 9 Feb 2021, 08:21 Reply Quote 0
        • undefined
          engikeneer @Phaedrux
          last edited by 9 Feb 2021, 08:21

          @Phaedrux afraid not. I'm mostly testing after dark and have tried with the lights on/off with no real change.

          @alankilian will try wrapping some tape round the capacitor later.

          E3D TC with D3Mini and Toolboards.
          Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
          i3 clone with a bunch of mods

          1 Reply Last reply Reply Quote 0
          • undefined
            engikeneer @Phaedrux
            last edited by 9 Feb 2021, 11:22

            @Phaedrux I've had a go at some more testing and I'm now less convinced it's an issue with the sensor, and maybe something in my setup...

            Test 1 - I put some electrical tape around the capacitor to block any stray light.
            Outcome - same as before:

            G32 bed probe heights: 0.112 -0.191 -0.514 -0.116 -0.191 -0.068, mean -0.161, deviation from mean 0.188
            

            Test 2 - I have a cloned Ormerod V1.2 IR sensor on my delta which I know works (reasonably) well, so swapped that it
            Outcome same as before....

            G32 bed probe heights: 0.125 -0.206 -0.235 0.145 -0.057 -0.022, mean -0.042, deviation from mean 0.146
            

            Back to the drawing board 😕

            One thought - the printer is currently in our spare bathroom (I'm working from home because of old 'rona and it was too noisy to keep in my office...). It's all tiled with lots of shiny surfaces. I'm wondering if some of the surfaces could be reflecting the IR light from the sensor and confusing things? Might explain why it is the same points that cause the issue if it's particular bits reflecting? Will try mocking up a cardboard shieled later, but any other ideas appreciated!

            E3D TC with D3Mini and Toolboards.
            Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
            i3 clone with a bunch of mods

            1 Reply Last reply Reply Quote 0
            • undefined
              Veti
              last edited by 9 Feb 2021, 13:18

              also try changing the surface? put a piece of paper underneath and see if it changes with that.

              also try changing the speed.

              M558 P1 C"zprobe.in" R0.2 H3.5 F350 T3500 A10 S0.01

              change F to 120

              undefined 1 Reply Last reply 9 Feb 2021, 18:26 Reply Quote 0
              • undefined
                engikeneer @Veti
                last edited by 9 Feb 2021, 18:26

                @Veti I changed to F120, decreased T and increased R. No luck unfortunately... I also tried drecreasing my XYZ jark & accel, but no change

                Tried a few different surfaces with no real difference:

                • 2 different Ziflex mats
                • straight onto the magnetic pad on my bed
                • painters blue tape on top of the ziflex
                • white card placed on top of the ziflex

                I've also tried crafting a shield out of card to put around the probe and moved the machine into a different room but no real change....

                20210209_181230.jpg

                I'm at a loss...

                E3D TC with D3Mini and Toolboards.
                Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                i3 clone with a bunch of mods

                1 Reply Last reply Reply Quote 0
                • undefined
                  Phaedrux Moderator
                  last edited by 9 Feb 2021, 18:28

                  Try separating out the probe wiring? Might make sense if the problem was the same for both probes if the wiring stayed the same.

                  Z-Bot CoreXY Build | Thingiverse Profile

                  undefined 1 Reply Last reply 10 Feb 2021, 19:20 Reply Quote 0
                  • undefined
                    Veti
                    last edited by 9 Feb 2021, 18:29

                    the fan is on in your picture. maybe the vibration are causing a problem?

                    undefined 1 Reply Last reply 9 Feb 2021, 18:54 Reply Quote 0
                    • undefined
                      engikeneer @Veti
                      last edited by 9 Feb 2021, 18:54

                      @Veti fan (and heaters) were on for my first few runs, has been off for everything since

                      @Phaedrux Just put in a new cable back to the Duet, keeping it separate from my main bundle (and holding it as the gantry moved). Unfortunately no change 😞

                      G32 bed probe heights: 0.267 0.290 -0.022 0.455 0.253 0.186, mean 0.238, deviation from mean 0.142
                      

                      Any other good/bad/silly ideas? 😛

                      I've bought a BLtouch which I'm gonna have a go at mounting later, but will keep the IR probe mounted for now.

                      E3D TC with D3Mini and Toolboards.
                      Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                      i3 clone with a bunch of mods

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        engikeneer @Phaedrux
                        last edited by 10 Feb 2021, 19:20

                        @Phaedrux I've now swapped in the BLtouch and it appears to be giving much more consistent readings

                        G32 bed probe heights: -0.033 -0.012 0.100 0.082 -0.229 -0.227, mean -0.053, deviation from mean 0.132
                        

                        So I'm guessing that there must be something in my setup that the IR sensor doesn't like.

                        Only thing I can think of, is does the IR sensor need the pull-up resistor enabled? I don't have it as I can't find any mention either way in the docs...

                        E3D TC with D3Mini and Toolboards.
                        Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                        i3 clone with a bunch of mods

                        undefined 1 Reply Last reply 10 Feb 2021, 19:23 Reply Quote 0
                        • undefined
                          Phaedrux Moderator @engikeneer
                          last edited by 10 Feb 2021, 19:23

                          @engikeneer said in IR Sensor Potential Fault:

                          Only thing I can think of, is does the IR sensor need the pull-up resistor enabled? I don't have it as I can't find any mention either way in the docs...

                          I don't think so, but it wouldn't hurt to try.

                          Z-Bot CoreXY Build | Thingiverse Profile

                          undefined 1 Reply Last reply 10 Feb 2021, 23:16 Reply Quote 0
                          • undefined
                            engikeneer @Phaedrux
                            last edited by 10 Feb 2021, 23:16

                            @Phaedrux You were right.. no change with the pull-up.

                            I feel like I've been playing musical probes recently as I only just switched out my old piezo! All part of the fun

                            Ah well, my guess is that the IR sensor just doesn't like something on this printer. I'm sure I can put it to good use on one of my others 🙂 The BLTouch seems to be working pretty well now so I'll stick with that on the core xy. Appreciate all yours and others help though!

                            E3D TC with D3Mini and Toolboards.
                            Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                            i3 clone with a bunch of mods

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              Phaedrux Moderator
                              last edited by 11 Feb 2021, 03:16

                              Yeah I don't know what that could be causing the ir sensor not to like the printer. Usually it comes down to the ambient light and bed surface, which you've tried to control for already, so I'm not sure. And it's both sensors, so it must be on the Duet side...

                              Z-Bot CoreXY Build | Thingiverse Profile

                              1 Reply Last reply Reply Quote 1
                              • undefined
                                dc42 administrators
                                last edited by dc42 2 Nov 2021, 07:56 11 Feb 2021, 07:56

                                Your photos show an extrusion very close to the side of the sensor. I am wondering whether a reflection from that might be interfering with the sensor reading. If that's the case, probing a little further away from that extrusion or putting matt black tape over it might have helped.

                                That said, a properly working BLTouch is likely to give similar or better results that are not affected by the transparency of the bed surface.

                                Duet WiFi hardware designer and firmware engineer
                                Please do not ask me for Duet support via PM or email, use the forum
                                http://www.escher3d.com, https://miscsolutions.wordpress.com

                                1 Reply Last reply Reply Quote 1
                                7 out of 15
                                • First post
                                  7/15
                                  Last post
                                Unless otherwise noted, all forum content is licensed under CC-BY-SA