Magnetic filament monitor specs and status



  • Good morning (UGT), folks.

    I'm in the process of implementing a rotating magnet filament monitor, mounted directly on a direct-drive filament drive, sensing the motion of the idler wheel (in this case a knurled surface, so the filament drives it reliably). I've got enough testing on it that I know I want to do a full integration test.

    Right now I'm using an AS-5600 sensor testing board, because A) it's a complete basic board with analog and some other outputs and mounting, and B) it was in stock on Arrow. However, it's a 12-bit sensor, and it doesn't have a digital output that matches the filament sensor protocol that the Duet RepRapFirmware has implemented - it's close, but not the SSI/SPI/SENT (whichever it is) of the official magnetic sensor.

    So my question is - are there any more of the beta magnetic sensor boards available? I'd love to just use the official board to minimize issues. Failing that, are there any specs on what the magnetic sensor board actually uses - is it a standard magnetic sensor with that specific output, and another microcontroller translating that to the format the Duet firmware is expecting?

    It feels like the magnetic sensor isn't as popular as the laser monitor, but are there any specific caveats or issues I should look out for, with the official or my own implementation? I know communication all the way to the moving extruder was brought up as one specific risky area.

    Thanks for any information and input you can provide. I've attached two pictures - one is of the mounting system I have setup right now, and another is a chunk of a graph of the data I recorded during a test print (a Mooshimeter logging analog rotation-ratiometric voltage - there are some spike artifacts that I believe are from my wiring setup, but need test further as they could be related to retractions).

    0_1539792874215_20181017_115915_HDR-shrunk.jpg
    0_1539792844149_magnetic_sensor_graph.png


  • administrators

    Our magnetic sensor uses a AS5600 encoder and ATTINY44A microcontroller to encode and transmit the data to the Duet. I know we commissioned a second batch of prototypes with revised dimensions, but I'm not sure about their availability. So I'll leave that for Tony to answer. He's busy for a few days, so don't expect an answer immediately.



  • Thanks for the super fast reply, David.

    It's entertaining that I ended up with the same sensor, though now I wonder - are you just reducing the resolution of the AS5600 in the ATTINY44A firmware for simpler processing on the Duet? Or is the encoder actually set to a lower resolution to reduce noise or similar? And are you using the analog output from the sensor, or the I2C (or PWM, or...these sensors have a lot of output options)?

    Good to hear that there's another batch in process - I'll wait for the timing info on that batch, though now that I know my next step of a micro in front of the encoder sending the data pretty much matches the official version, and the sensor is the same, I think I will actually get this implementation fully together for initial testing. I'll probably throw a Arduino Mega on there - massive, massive overkill, but again, what I have on hand...

    Thanks again David - have a good day.


  • administrators

    We're using the I2C interface of the AS5600. We drop the lowest 2 bits because they are noisy and we don't need that much precision anyway.



  • Great, thanks again X) Looks like I get to hack up some firmware.



  • Nice project! Monitoring the idler wheel is a good idea.


Log in to reply