Repetier Creality CR10s PRO V2 Farm and runout detection

Hi,
I plan to use Repetier to handle my 3D printer FARM so I try the free version for now (Creality CR10s PRO V2 but soon 2 more or even a CR30 with the belt). But I just discovered that the runout sensor is not detected by the Repetier Server ... what should I do for that ?
Thanks for your help.
Stéphane

Comments

  • I already discovered that at least my Anycubic I3 Mega and Artillery Sidewinder X1 do not give any message on filament run out, so server has no chance to detect this. One solution in case you are running a raspberry pi with the printer is to connect the filament sensor to the pi instead and run a script like this:

    https://github.com/Raabi91/filament_runout_Repetier

    to detect runout and send it to printer.

    Since you say it is not detected I assume the same problem, but don't have a CR30 to verify. Alternatively upload a modified firmware if you can that sends a message when filament runout switches from full to none. You can then add a listener is server that watches for that message and calls @pause Out of filament to pause a print.

    Both solutions work equally well.

  • for now I just have 2 creality CR10SPRO V2 ... when use local with sdcard the filament detection is working great ... but not within repetier server on the pi ...
    Not very confident in changing the cable on the filament detection .... 
  • Yes, that is the problem. They only use the sensor when printing from sd and completely ignore it otherwise. Some marlin versions for example echo
    enqueuing: "M600"
    which is what we are looking for already. But you need to configure firmware to do so and they didn't:-(

    Not sure how it is for CR10 but my printers have external filament sensors and redirecting the pins to the pi is not that difficult. If you search filament_runout_Repetier on the forum you will find some threads about it. But it is minimal hardware hacking.
  • Repetier said:
    Yes, that is the problem. They only use the sensor when printing from sd and completely ignore it otherwise. Some marlin versions for example echo
    enqueuing: "M600"
    which is what we are looking for already. But you need to configure firmware to do so and they didn't:-(

    Not sure how it is for CR10 but my printers have external filament sensors and redirecting the pins to the pi is not that difficult. If you search filament_runout_Repetier on the forum you will find some threads about it. But it is minimal hardware hacking.
    Can you provide source for the hardware ? I am not against doubling the detection ;) .... and for the software it's peace of cake ....
    Thanks for your help, I will try to dump a message to creality, maybee it could be the one getting it done ...
  • I'd just had a look in the source code and there is this par : 
      #if ENABLED(FILAMENT_RUNOUT_SENSOR)
        if ((IS_SD_PRINTING || print_job_timer.isRunning()) && (READ(FIL_RUNOUT_PIN) == FIL_RUNOUT_INVERTING))
          handle_filament_runout();
      #endif


    and as I can understand it cool work from SD printing but also from print_job_timer ... isn't that the mode with repetier ?

    the function handle_filament_runout is doing that : 


     if (!filament_ran_out) {
          filament_ran_out = true;
          enqueue_and_echo_commands_P(PSTR(FILAMENT_RUNOUT_SCRIPT));
          stepper.synchronize();
        }


    so it seems to do the job no ?


    Stéphane


  • In recent versions we start the timer with M75 and with M31 you can query time in console.  So the timer running condition would be met. But at least on my Sidewinder I tested it. It knows timer already but no message. How is it in your case? Any message? FILAMENT_RUNOUT_SCRIPT is M600 I guess? 
Sign In or Register to comment.