I made a schematic and Arduino program for it.
I has its power positioned between Arduino input logic level limits.
It can be kicked on with ON/OFF switch contact broken out by pulling it LOW
The Arduino outputs analog signal 1V = 1mm, inverted MULTIFAIL signal if the filament is out of specification (editable in program), and fake encoder signal to simulate jamming. I can install real encoder in the future.
Now i need to hack Marlin on GT2560 board and insert one of my signals to pause the printer if filament runs out or falls out of diameter specification. I will position it like if spool jams, the caliper opens and pauses the print.