See it in action:
The display has two rows. "U" is the current filament usage in millimeters. "T" is the total filament usage from the beginning. There is one RESET button. A short click will reset the "U" counter to zero, which is useful for each new project. A double click will reset the "T" to zero which s useful when replace the filament rolls. Additionally, when the unit powered up, the user is able to choose the direction of the filament movement, i.e. forward or backward depending on the mounting position of the sensor unit by pressing the Reset button.
I built one. Works as intended. One thing I notice is that the total filament used amount resets when the arduino is powered off. Also, I notice a slow refresh of the LCD display which is distracting. It is almost perfect except for these "issues". Would there be any way to store the total used amount so it's not lost between prints? Is there any way to speed up the LCD refresh rate? I'm willing to beta test new code if you decide to work on these issues.