Yet another "help with my FSR setup" thread...

  • Hello...

    I've had a Rostock max v2 since 2014, but it hasn't seen much action in the past 2 or 3 years. I recently started using it again and have upgraded... e3d v6, titan extruder, PEI bed, and after that was all working I threw in a Duet Ethernet and JohnSL FSR setup. That is all wired up and basically working... motors going in right direction, heaters working and calibrated, FSR lights triggering, etc. I can do a g28 home, and that works fine, but I am now stuck at the FSR/Calibration setup. I have tried various things and looked at a dozen (at least) different sources with info, often conflicting or single source.

    I am trying to go through the steps here... . I get to step 8. Send G30 S-1 to probe the bed without resetting the Z=0 position. When I enter that the head moves down, crunches the bed, and keeps trying to move down at which point I power down.

    I have not tried everything I've read as I figured it would be better to check here before I end up breaking something. So the printer hardware is Rostock v2, TrickLaser arms (old version), E3d v6, titan extruder, and FSR. The FSR out is plugged into the duet Z probe input (I've read of putting it in the E0 endstop plug, but the Z guide here said to use the Z probe). Duet is the latest as of a couple weeks ago, and I updated the firmware and web interface at that time. The FSR board has two jumpers, one setting sensitivity to .95, the other to set switch mode (NC).

    I used the RepRap config tool to generate the sys files, and cross referenced some older rostock files I found. I've tweaked the configs based on various sites and posts. Files read as below...

    ; Configuration file for Duet Ethernet (firmware version 1.21)
    ; executed by the firmware on start-up
    ; generated by RepRapFirmware Configuration Tool on Wed Aug 22 2018 14:14:40 GMT-0700 (Pacific Daylight Time)

    ; General preferences
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; The homed height is deliberately set too high in the following - you will adjust it during calibration.
    M665 R130.25 L269 B125 H367 ; Set delta radius, diagonal rod length, printable radius and homed height
    M666 X0 Y0 Z0 ; Put your endstop adjustments here, or let auto calibration find them

    ; Network
    M550 PRostock Max V2 ; Set machine name
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    ; Drives
    M569 P0 S1 ; X Drive 0 goes forwards
    M569 P1 S0 ; Y Drive 1 goes backwards
    M569 P2 S1 ; Z Drive 2 goes forwards
    M569 P3 S0 ; EXT Drive 3 goes backwards
    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    M92 X80 Y80 Z80 E401 ; Set steps per mm
    M566 X1200 Y1200 Z1200 E1200 ; Set maximum instantaneous speed changes (mm/min)
    M203 X18000 Y18000 Z18000 E1200 ; Set maximum speeds (mm/min)
    M201 X1000 Y1000 Z1000 E1000 ; Set accelerations (mm/s^2)
    M906 X1000 Y1000 Z1000 E800 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 Z0 S1 ; Set minimum Z

    ; Endstops
    M574 X2 Y2 Z2 S1 ; Set active high endstops

    ; Z-Probe
    M558 P4 H5 F120 T6000 I1 ; Set Z probe type to switch and the dive height + speeds
    G31 P500 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
    M557 R100 S20 ; Define mesh grid

    ; Heaters
    M307 H0 B0 S1.00 ; Disable bang-bang mode for the bed heater and set PWM limit
    M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; Set temperature limit for heater 1 to 280C

    ; Fans
    M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off

    ; Tools
    M563 P0 D0 H1 ; Define tool 0
    G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

    ; Automatic saving after power loss is not enabled

    ; Custom settings are not configured
    M501 ; Run config-override.g


    ; This is a system-generated file - do not edit
    ; Delta parameters
    M665 L269.000 R130.250 H367.000 B125.0 X0.000 Y0.000 Z0.000
    M666 X0.000 Y0.000 Z0.000 A0.00 B0.00
    ; Heater model parameters
    M307 H0 A148.5 C596.3 D1.8 S1.00 V11.9 B0
    M307 H1 A522.4 C238.6 D5.0 S1.00 V12.0 B0
    M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H3 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H4 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0


    ; homedelta.g
    ; called to home all towers on a delta printer
    ; generated by RepRapFirmware Configuration Tool on Wed Aug 22 2018 14:14:41 GMT-0700 (Pacific Daylight Time)
    G91 ; relative positioning
    ; Slow homing has been configured. Change F300 to F3000 below when your configuration is working
    G1 S1 X239.66 Y239.66 Z239.66 F900 ; move all towers to the high end stopping at the endstops (first pass)
    G1 X-5 Y-5 Z-5 F3000 S2 ; go down a few mm
    ; Slow homing has been configured. Change F300 to F1500 below when your configuration is working
    G1 S1 X10 Y10 Z10 F900 ; move all towers up once more (second pass)
    ;G1 Z-5 F6000 ; move down a few mm so that the nozzle can be centred COMMENTED OUT as per Guide
    G90 ; absolute positioning
    ;G1 X0 Y0 F6000 ; move X+Y to the centre COMMENTED OUT as per Guide


    I wasn't expecting to get through this on my own, but I am all googled out, so any clues would be appreciated...



  • administrators

    P4 in the M558 command says you have the Z probe connected to the E0 endstop connector. As you are using the Z probe connector, you need to use either P5 (filtered) or P8 (unfiltered, probably best when using the JohnSL board).

    The trigger height (Z parameter in the G31 command) will need to be slightly negative. Try Z-0.1.

  • I had that as p5 at first but didn’t realize it changed, likely from replacing that line with one from another thread or site while trying to troubleshoot, but I’ve changed a few things since then so I’ll give it a go.



  • So I replaced the P4 with P8, and now when I do "G30 S-1" nothing happens and I get an error "Z probe already triggered at start of probing move". I noticed that in the machine status area it lists the Z probe as 1000 as the default state, and when I press the bed it drops to 0. Should that be the other way around? I currently have an i1 in the m558 line, should that be removed?

    I have also been homing the machine when I turn it on before I try to do anything else, maybe I shouldn't do that? I'll try again without doing that...



  • never mind on that last part, the manual control is disabled until I do a home all or g28, so I need to do that to follow the steps in the guide (even though the guide doesn't implicitly say to do a home first.


  • removing the invert on the m558 has allowed me to move on. Fingers crossed for the rest...


  • Another question...

    Measuring the trigger height

    2. Cancel any existing bed compensation by sending M561
    3. Send M208 S1 Z-3 to temporarily allow Z moves down to Z=-3mm. This is to ensure that you can lower the nozzle all the way to the bed in step 5.
    4. Command the print head to the XY coordinates you want to probe
    5. Command the print head down in small steps until the nozzle just touches the bed or just grips a sheet of paper. You may need to send M564 S0 to allow movement lower than where the firmware thinks Z=0 is. You may also wish to create a macro to lower the head by e.g. 0.02mm to get greater accuracy (G91 followed by G1 Z-0.02).
    6. Send G92 Z0 to define that height as Z=0
    7. Command the nozzle up 5mm (G1 Z5)
    8. Send G30 S-1 to probe the bed without resetting the Z=0 position
    9. Read off the Z height from the web interface. That is the trigger height.
    10. Repeat the previous two steps a couple of times to make sure you are getting a consistent result
    11. Repeat steps 4-10 for the other XY positions you want to check

    When you have established what the trigger height is, set the Z parameter og the G31 command in config.g to that value.

    SO, I do the steps as listed, and enter in -.2 as the trigger height as measured by the probe and enter that to the G31 in config.g and restart firmware. In the next section it has me check the Repeatability, I do those couple steps, but my trigger height is now -3.6. This is because the G92 Z0 in the last section is lost after I change the height in the config.g and restart. I originally had to move Z to -3.4 to do the paper test at which point I did the G92 Z0 and the probes.

    Does that matter? Do I need to change the trigger height to the new value? Or change my printable height to be more accurate (looks to be 3.4 or so too short in the M665). I'm not sure I understand the point of resetting Z if that is thrown out after a restart, nullifying the trigger height.

    confused yet? I am...



  • I think I get it now, I was thinking the trigger height was relative to the homed height, but it is in fact the difference between the actual bed surface and the amount it dips before triggering. That makes more sense and answers the questions above.

    Slowly wrapping my head my head around all this...


  • administrators

    So now that you have set the trigger height, you should be able to run auto calibration, which will establish the true homed height and the other delta printer parameters.

Log in to reply