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

    Magnetic Filament Monitor Odd Sensitivity

    Scheduled Pinned Locked Moved
    Filament Monitor
    2
    12
    574
    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.
    • Nurgelrotundefined
      Nurgelrot
      last edited by

      Just built a new printer and I added a V2 (pcb 1.7b) Duet3d MFM and used the same config line I've used on several other printers which is :

      M591 D0 P3 C"121.io1.in"  S0 R70:130 L26.00 E3.0 
      

      but this is the crazy sensitivity reading I'm getting... (Yes I know its disabled just running it disables to see if I needed tuning...)
      [Console]

      M591 D0
      Duet3D rotating magnet filament monitor v4 on pin 121.io1.in, disabled, sensitivity 26.00mm/rev, allow 70% to 130%, check printing moves every 3.0mm, version 4, mag 130 agc 61, measured sensitivity 256041.98mm/rev, min -55609% max 56228% over 4000.7mm
      

      256k rev/mm? Wow Any idea's what going on?

      version infor I'm sure you all will ask me:
      Duet3d Mini5 with 1LC v1.2 toolboard RRF 3.4

      m122
      === Diagnostics ===
      RepRapFirmware for Duet 3 Mini 5+ version 3.4.0 (2022-03-15 18:59:15) running on Duet 3 Mini5plus Ethernet (SBC mode)
      Board ID: NKAPA-J096U-D65J0-40KM4-M213Z-732L8
      Used output buffers: 10 of 40 (22 max)
      === RTOS ===
      Static ram: 103684
      Dynamic ram: 98244 of which 0 recycled
      Never used RAM 36160, free system stack 112 words
      Tasks: SBC(ready,3.8%,448) HEAT(notifyWait,0.0%,338) Move(notifyWait,2.2%,263) CanReceiv(notifyWait,0.0%,772) CanSender(notifyWait,0.1%,346) CanClock(delaying,0.0%,337) TMC(notifyWait,1.3%,71) MAIN(running,91.6%,510) IDLE(ready,0.1%,29) AIN(delaying,0.9%,264), total 100.0%
      Owned mutexes: HTTP(MAIN)
      === Platform ===
      Last reset 00:56:33 ago, cause: software
      Last software reset at 2022-03-29 03:29, reason: User, GCodes spinning, available RAM 36640, slot 2
      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task SBC Freestk 0 n/a
      Error status: 0x00
      Aux0 errors 0,0,0
      MCU revision 3, ADC conversions started 3394762, completed 3394761, timed out 0, errs 0
      Step timer max interval 1479
      MCU temperature: min 33.6, current 35.8, max 36.1
      Supply voltage: min 24.1, current 24.1, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
      Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/106/106, gc cycles 0
      Events: 0 queued, 0 completed
      Driver 0: standstill, SG min 0, read errors 0, write errors 1, ifcnt 123, reads 46316, writes 25, timeouts 0, DMA errors 0, CC errors 0
      Driver 1: standstill, SG min 0, read errors 0, write errors 1, ifcnt 125, reads 46315, writes 26, timeouts 0, DMA errors 0, CC errors 0
      Driver 2: standstill, SG min 0, read errors 0, write errors 1, ifcnt 126, reads 46314, writes 26, timeouts 0, DMA errors 0, CC errors 0
      Driver 3: standstill, SG min 0, read errors 0, write errors 1, ifcnt 126, reads 46314, writes 26, timeouts 0, DMA errors 0, CC errors 0
      Driver 4: standstill, SG min 0, read errors 0, write errors 1, ifcnt 65, reads 46331, writes 10, timeouts 0, DMA errors 0, CC errors 0
      Driver 5: ok, SG min 0, read errors 0, write errors 1, ifcnt 101, reads 46323, writes 18, timeouts 0, DMA errors 0, CC errors 0
      Driver 6: ok, SG min 0, read errors 0, write errors 1, ifcnt 100, reads 46322, writes 18, timeouts 0, DMA errors 0, CC errors 0
      Date/time: 2022-03-29 04:26:10
      Cache data hit count 4294967295
      Slowest loop: 371.06ms; fastest: 0.07ms
      === Storage ===
      Free file entries: 10
      SD card 0 not detected, interface speed: 0.0MBytes/sec
      SD card longest read time 0.0ms, write time 0.0ms, max retries 0
      === Move ===
      DMs created 83, segments created 32, maxWait 73302ms, bed compensation in use: mesh, comp offset 0.000
      === MainDDARing ===
      Scheduled moves 75272, completed 75232, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 3], CDDA state 3
      === AuxDDARing ===
      Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === Heat ===
      Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
      Heater 0 is on, I-accum = 0.4
      Heater 1 is on, I-accum = 0.0
      === GCodes ===
      Segments left: 1
      Movement lock held by null
      HTTP* is doing "M122" in state(s) 0
      Telnet is idle in state(s) 0
      File* is doing "G1 X129.897995 Y139.373001 E0.013520" in state(s) 0
      USB is idle in state(s) 0
      Aux is idle in state(s) 0
      Trigger* is idle in state(s) 0
      Queue* is idle in state(s) 0
      LCD is idle in state(s) 0
      SBC is idle in state(s) 0
      Daemon is idle in state(s) 0
      Aux2 is idle in state(s) 0
      Autopause is idle in state(s) 0
      Code queue is empty
      === Filament sensors ===
      Extruder 0: no data received
      === CAN ===
      Messages queued 101179, received 70154, lost 0, boc 0
      Longest wait 4ms for reply type 6048, peak Tx sync delay 276, free buffers 18 (min 9), ts 16970/16969/0
      Tx timeouts 0,0,0,0,0,0
      === SBC interface ===
      Transfer state: 4, failed transfers: 0, checksum errors: 0
      RX/TX seq numbers: 3315/3315
      SPI underruns 0, overruns 0
      State: 5, disconnects: 0, timeouts: 0, IAP RAM available 0x0f6b8
      Buffer RX/TX: 1776/3240-0, open files: 0
      === Duet Control Server ===
      Duet Control Server v3.4.0
      File /opt/dsf/sd/gcodes/KVP corner_panel_clip_4mm_x8-21.154g-2h8m.gcode is selected, processing
      File:
      Buffered code: G1 X129.1 Y139.479 E.01827
      Buffered code: G1 X128.43 Y139.291 E.01754
      Buffered code: G1 X128.107 Y139.044 E.01025
      Buffered code: G1 X110.956 Y121.893 E.61188
      Buffered code: G1 X110.709 Y121.57 E.01025
      Buffered code: G1 X110.538 Y120.958 E.01603
      Buffered code: M204 S3000
      Buffered code: G1 X110.872 Y120.9 F18000
      Buffered code: M204 S2000
      Buffered code: G1 F4800
      Buffered code: G1 X111.022 Y120.364 E.01405
      Buffered code: G1 X111.304 Y120.027 E.01109
      Buffered code: G1 X111.651 Y119.803 E.01039
      Buffered code: G1 X111.794 Y119.755 E.00382
      Buffered code: G1 X110.683 Y119.765 E.02804
      Buffered code: G1 X110.394 Y119.733 E.00732
      Buffered code: G1 X110.079 Y119.637 E.00831
      Buffered code: G1 X109.77 Y119.454 E.00905
      Buffered code: G1 X109.53 Y119.217 E.0085
      Buffered code: G1 X109.338 Y118.848 E.0105
      Buffered code: G1 X109.296 Y118.563 E.00728
      Buffered code: G1 X109.305 Y111.267 E.18404
      Buffered code: G1 X109.376 Y110.898 E.00948
      Buffered code: G1 X109.549 Y110.467 E.01172
      Buffered code: G1 X109.744 Y110.163 E.00909
      Buffered code: G1 X109.985 Y109.894 E.00912
      Buffered code: G1 X110.355 Y109.612 E.01172
      Buffered code: G1 X110.692 Y109.445 E.00949
      Buffered code: G1 X111.14 Y109.322 E.01172
      Buffered code: G1 X111.465 Y109.296 E.00822
      ==> 1392 bytes
      Pending code: G1 X138.535 Y109.296 E.68285
      Pending code: G1 X138.86 Y109.322 E.00822
      Code buffer space: 1968
      Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 1
      Full transfers per second: 39.62, max time between full transfers: 268.2ms, max pin wait times: 85.0ms/13.6ms
      Codes per second: 23.38
      Maximum length of RX/TX data transfers: 3708/1152
      3/28/2022, 9:18:33 PM
      
      M122 B121
      Diagnostics for board 121:
      Duet TOOL1LC rev 1.1 or later firmware version 3.4.0 (2022-03-15 09:00:04)
      Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
      All averaging filters OK
      Never used RAM 2204, free system stack 17 words
      Tasks: Move(notifyWait,0.8%,91) HEAT(notifyWait,0.3%,95) CanAsync(notifyWait,0.0%,57) CanRecv(notifyWait,0.1%,74) CanClock(notifyWait,0.0%,65) ACCEL(notifyWait,0.0%,61) TMC(notifyWait,3.0%,57) MAIN(running,90.8%,349) IDLE(ready,0.0%,26) AIN(delaying,4.9%,142), total 100.0%
      Last reset 00:57:20 ago, cause: software
      Last software reset time unknown, reason: AssertionFailed, available RAM 3392, slot 2
      Software reset code 0x0120 ICSR 0x00000000 SP 0x2000415c Task  Freestk 129 bad marker
      Stack: 00000544 00022ffc 00019b65 20003134 00016cff 20003134 000163d1 20000ed0 00000000 00000001 00008275 200071c8 200071c8 200071e0 00000000 20000f50 00011647 000223b8 00022474 00021ac8 00019b05 200071c8 200071c8 20000f50 000083ed 200071d8 000009c7
      Driver 0: pos 1743570, 400.0 steps/mm,ok, SG min 0, read errors 0, write errors 1, ifcnt 90, reads 5948, writes 14, timeouts 3, DMA errors 0, CC errors 0, failedOp 0x6a, steps req 1918170 done 1917889
      Moves scheduled 72097, completed 72095, in progress 1, hiccups 0, step errors 0, maxPrep 547, maxOverdue 4, maxInc 2, mcErrs 0, gcmErrs 0
      Peak sync jitter -4/10, peak Rx sync delay 225, resyncs 0/0, next step interrupt due in 967 ticks, enabled
      VIN voltage: min 23.9, current 24.0, max 24.2
      MCU temperature: min 42.4C, current 52.4C, max 52.5C
      Last sensors broadcast 0x00000002 found 1 87 ticks ago, 0 ordering errs, loop time 0
      CAN messages queued 71131, send timeouts 0, received 103345, lost 0, free buffers 37, min 36, error reg 110000
      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 469, adv 34637/74650
      Accelerometer: LIS3DH, status: 00
      I2C bus errors 0, naks 3, other errors 0
      === Filament sensors ===
      Interrupt 4 to 28us, poll 8 to 3428us
      Driver 0: pos 15.82, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0
      Nurgelrotundefined 1 Reply Last reply Reply Quote 0
      • Nurgelrotundefined
        Nurgelrot @Nurgelrot
        last edited by Nurgelrot

        I put on a different MFM this one a V1 also with a 1.7b PCB and it working as expected.

        Duet3D rotating magnet filament monitor v3 on pin 121.io1.in, disabled, sensitivity 26.00mm/rev, allow 70% to 130%, check printing moves every 3.0mm, version 3, mag 129 agc 82, measured sensitivity 25.76mm/rev, min 98% max 103% over 30.5mm
        

        What are the chances the PCB is bad? I guess I can swap them out too... I can try redoing the case as well but the values for mag and agc are within spec. [EDIT] No they aren't mag is a little too high in both cases... okay see what I can do to fix that.

        Nurgelrotundefined 1 Reply Last reply Reply Quote 0
        • Nurgelrotundefined
          Nurgelrot @Nurgelrot
          last edited by

          Okay using a different 1.7b pcb and v1 mechanical parts I was able to show that its the mechanical side of the sensor that's causing the error. Probably the housing... so Not much anyone can do here to help I'll just have to make a better housing. Thanks for letting me ramble 🙂

          Lo-Fiundefined 1 Reply Last reply Reply Quote 1
          • Lo-Fiundefined
            Lo-Fi @Nurgelrot
            last edited by

            @nurgelrot I've been keeping an eye on the thread, but hadn't had anything much to add. I take it you used the housing designed for each type of rotating assembly when swapping? If so, just out of interest, how did you print and what layer height? You might be interested in the thread over here, it discusses some of the issues you can run into when FDM printing the case. I've never had crazy figures like that out of the MFM, I have to admit!

            Nurgelrotundefined 1 Reply Last reply Reply Quote 1
            • Nurgelrotundefined
              Nurgelrot @Lo-Fi
              last edited by Nurgelrot

              @lo-fi I typcally do the housings on my resin printer. But the V2 housing I printed the 2.5mm holes even on the smaller hole version where too large to give the threads any bite. So I did second one on an Voron V0 in ASA with .12 layer height and it looked okay but clearly has issues. I'm going to shrink the holes slightly in the model and reprint in resin when I get time. Or possibly test your redesign 🙂 Id have to change how I mount it but that's no big deal.

              Lo-Fiundefined 1 Reply Last reply Reply Quote 0
              • Lo-Fiundefined
                Lo-Fi @Nurgelrot
                last edited by

                @nurgelrot

                Thanks for the info, that's interesting. You may find that the 1.2 layer height had an impact on the housing. One of the critical distances is between the bearing flanges, with the next being the PCB standoffs. For V1 and V2, the flange to flange distance is 6 and 5mm respectively. 1.2 divides in 6 neatly, so you'll get 5 full layers on the V1. 1.2 into 5 is rather more awkward at 4.16 recurring, so depending on the slicer and printer, you may actually get 4.8mm which is definitely too small.

                I can't remember the stock housing PCB standoff heights - I have 5.9/6.9mm from the top bearing flange (respectively), so 1.2 may be an awkward division there too. The official design is suggested 0.2mm layer height, though I found that a little course in my experimentation with my own design and opted for designing in 0.1mm increments.

                Anyway, after all that waffling on 😌 : Give it a go at 0.1mm layer height, you may find it all fits a little better 🙂 I'm getting closer to releasing my updated design for anyone that wants to try too.

                I'm sure I remember some documentation saying that it's possible for the magnet to be too close to the chip, though in typical fashion I can't find it now!

                Nurgelrotundefined 2 Replies Last reply Reply Quote 0
                • Nurgelrotundefined
                  Nurgelrot @Lo-Fi
                  last edited by

                  @lo-fi Resin printed a new housing and I thought it had fixed it but the sensitivity mm/rev started out at a great 27mm but just kept creeping up as the print went on making 5-10mm jumps every 20-30 second until it was well over 150 and climbing. So something is still off. Not very pleased with the V2 magnet at this point. I have 4 of the V1 and all of them work great. Lucky I have a spare V1 To use for now,
                  When you get the kinks ironed out send me a link to your housing and I'll print it out either 1mm layer or in resin and give it a go.

                  Lo-Fiundefined 1 Reply Last reply Reply Quote 0
                  • Lo-Fiundefined
                    Lo-Fi @Nurgelrot
                    last edited by

                    @nurgelrot That's a puzzle for sure... I've got the V2 magnet to try myself, so I'll keep you posted on how I get on and send some links your way. Maybe I can replicate it!

                    I'd be interested to see some M591 D0 outputs throughout that print if you still have them handy.

                    I'd really like to know why the change V1 to V2 rotating assembly. I'd assumed the larger magnet means the distance between it and the chip isn't quite so critical, but that's pure conjecture on my part.

                    1 Reply Last reply Reply Quote 0
                    • Nurgelrotundefined
                      Nurgelrot @Lo-Fi
                      last edited by

                      @lo-fi ha .12 not 1.2 I cant type

                      1 Reply Last reply Reply Quote 0
                      • Nurgelrotundefined
                        Nurgelrot
                        last edited by

                        Okay Solved. Housing had the magnet too close. I shimmed it with 5 layers of 20# paper. that got the agc up to 112 and the mag down to 128 and its giving reliable readings. Going to modify SLT that I already fixed the screw hole size on to make ~.5mm more space for the magnet when using resin

                        Lo-Fiundefined 1 Reply Last reply Reply Quote 1
                        • Lo-Fiundefined
                          Lo-Fi @Nurgelrot
                          last edited by

                          @nurgelrot lol, I should have realised!

                          That's a great result and valuable info. Bet the previous one got worse as the housing relaxed a little and the mag got closer than it should be.

                          Nurgelrotundefined 1 Reply Last reply Reply Quote 0
                          • Nurgelrotundefined
                            Nurgelrot @Lo-Fi
                            last edited by

                            @lo-fi For the record if anyone is reading this. .5 was too much but I printed different sizes in a batch in the resin printer. The one with .3 added to the inner surface of the lid of the MMF v2 housing got me to the magic agc 110 mag 128 that seems to be working... All magnets vary of course so maybe mine was just a little bit strong.

                            But if you have a sensor that's reading way high mm/rev sensitivity back your magnet off a tiny amount. the tolerances in the thing are super tight.

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post
                            Unless otherwise noted, all forum content is licensed under CC-BY-SA