Fine tuning the Magnetic Filament Monitor



  • By "a bit of a process" I meant you'll need to activate your google-fu.
    The firmware is in github and you need a pogo-pin firmware loader - the rest should be not unlike loading firmware on other simple rt devices.

    I have never seen "a documented process".


  • administrators



  • I have three of the magnetic filament monitors and they also report over extrusion occasionally. From what I can tell, they most often report over extrusion on very short infill patterns. All three are version 2.0 and I would like to update them to 3.0 to see if this helps.

    My question, is there a wiring diagram and STL for the pogo pins?


  • administrators

    the pogo pins are a standard ISP 6 pin pinout:

    efdf781a-a46a-4dbd-a6a3-7880e4d565f9-image.png

    Updated the documentation to show this image.



  • @T3P3Tony
    Followed the steps to program the MFM and the ELF software file in the release-44a directory on github is v1. This is the URL of the file https://github.com/Duet3D/MagneticFilamentMonitor/raw/master/Release-44a/FilamentSensor.elf.

    As you can see in the screenshot below, it was v2 before uploading and is now v1. Did I do something improperly? Or is there a link for v3?

    Screen Shot 2020-10-10 at 8.39.03 AM.jpg

    Here is the output from avrdude when uploading the file

    C:\avrdude>avrdude.exe -pt44 -cusbtiny -Uflash:w:FilamentSensor.elf:e
    
    avrdude.exe: AVR device initialized and ready to accept instructions
    
    Reading | ################################################## | 100% 0.02s
    
    avrdude.exe: Device signature = 0x1e9207 (probably t44)
    avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed
                 To disable this feature, specify the -D option.
    avrdude.exe: erasing chip
    avrdude.exe: reading input file "FilamentSensor.elf"
    avrdude.exe: writing flash (1826 bytes):
    
    Writing | ################################################## | 100% 1.41s
    
    avrdude.exe: 1826 bytes of flash written
    avrdude.exe: verifying flash memory against FilamentSensor.elf:
    avrdude.exe: load data flash data from input file FilamentSensor.elf:
    avrdude.exe: input file FilamentSensor.elf contains 1826 bytes
    avrdude.exe: reading on-chip flash data:
    
    Reading | ################################################## | 100% 1.14s
    
    avrdude.exe: verifying ...
    avrdude.exe: 1826 bytes of flash verified
    
    avrdude.exe: safemode: Fuses OK (E:FF, H:DF, L:E2)
    
    avrdude.exe done.  Thank you.
    

    Also, receiving the following error when setting the fuses. Not sure if this is related. Are additional files needed to set the fuses?

    C:\avrdude>avrdude.exe -p t44 -c usbtiny -U lfuse_w_0xe2_m -U hfuse_w_0xdf_m -U efuse_w_0xff_m
    
    avrdude.exe: AVR device initialized and ready to accept instructions
    
    Reading | ################################################## | 100% 0.01s
    
    avrdude.exe: Device signature = 0x1e9207 (probably t44)
    avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed
                 To disable this feature, specify the -D option.
    avrdude.exe: erasing chip
    avrdude.exe: reading input file "lfuse_w_0xe2_m"
    avrdude.exe: error opening lfuse_w_0xe2_m: No such file or directory
    avrdude.exe: can't determine file format for lfuse_w_0xe2_m, specify explicitly
    avrdude.exe: read from file 'lfuse_w_0xe2_m' failed
    
    avrdude.exe: safemode: Fuses OK (E:FF, H:DF, L:E2)
    
    avrdude.exe done.  Thank you.
    

    Thanks for your help.



  • @T3P3Tony @dc42 Can you help with this? Did I do something wrong or was v1 firmware posted by mistake?


  • administrators

    Fuse setting has an error, should be:

    C:\avrdude\avrdude -p t44 -c usbtiny -U lfuse:w:0xe2:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m

    Looks like the colons were removed on the Dozuki site and replaced with underscores 😖 i have updated that. so should work now but I don't think that is the cause of this issue

    please try this firmware:
    FilamentSensor.elf



  • @T3P3Tony
    Thank you for the reply. Unfortunately that firmware file also reports as v1. Not sure if this makes a difference or not but Release 44a and the file you uploaded are both 32,204 bytes.


  • administrators

    I will have a look, which version of the filament monitor board do you have?



  • @T3P3Tony
    I have three and they all were purchased late 2019. This particular one was purchased November 16, 2019 from Filastruder. They all say 1.7 but I believe they are 1.7a.

    IMG_3176.jpg IMG_3175.jpg



  • @T3P3Tony Not sure if you saw the last post but would like to get this machine running again. Thanks!


  • administrators

    hi @mwolter yes those use the attiny44a so the version 3 firmware that I shared is right for that. I am very surprised that it shows up as version 1.

    I got a version 1.7 sensor from my spares and flashed the firmware to it (there are a few minor differences between 1.7 and 1.7a - none that should effect his but I may as well have exactly the setup you have).

    This is the response from a printer running RRF 2.0.5.1:daf18c35-7a1f-4d5c-9cd2-c8dcb34340ea-image.png

    Error code 6 is expected because i just plugged the board in no magnet to detect.

    The key point is its showing as version 3. This is the firmware I flashed

    FilamentSensor.elf

    please download and overwrite whatever firmware you have with this one ☝ and test again.

    Since it originally changed from version 2 to version 1, to me that indicates it is likely to be an issue with the firmware file being flashed



  • @T3P3Tony
    Thank you, that worked. I believe the issue was that no magnet was detected. Mounted the board in it's proper location (next to the magnet) and it reported v3. With it just plugged and hanging in it reported v1. This is a Duet3 no SBC on v3.1.1. Thanks again.


Log in to reply