Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Z instanthomes - M119 throws Zprobe at min, no zprobe set

    Scheduled Pinned Locked Moved
    Laser Cutters
    3
    8
    181
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • eponraundefined
      eponra
      last edited by

      Hello all,

      so i wanted to build a laser with rrf and did so, and i more or less worked everything out.
      This laser is running for two years now, but now i added a third axis which ofc is Z.

      Failure: Z wont home, sets it instantly to "axis homed" without moving the motor.

      M119 throws the reason:

      m119
      Endstops - X: not stopped, Y: at min stop, Z: not stopped, Z probe: at min stop
      

      So z probe is at min stop; but i have never set a z probe, and cant for the life of me figure out where RRF gets this from. There is no G30 in any of the "home...g"-files, no M557 or M558
      in the config.g

      Versions:
      Duet Web Control 3.4.5
      Board: fly_cdyv3 (STMWiFi)
      Firmware: RepRapFirmware for STM32F4 based Boards 3.4.0rc2_1 (2022-02-24)
      Duet WiFi Server Version: 1.26-08S32-D

      config.g (i have NO config-override.g):

      ; Configuration file for Fly-CDYv3 (firmware version 3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.4.0-LPC-STM32+6 on Mon Apr 17 2023 21:26:33 GMT+0200 (Mitteleuropäische Sommerzeit)
      
      ; General preferences
      G21                            ; Set dimensions to millimetres
      G90                            ; send absolute coordinates...
      M550 P"DragonLaser"            ; set printer name
      
      ; Network
      M551 P"reprap"                 ; set password
      M552 S1                        ; enable network
      M586 P0 S1                     ; enable HTTP
      M586 P1 S0                     ; disable FTP
      M586 P2 S0                     ; disable Telnet
      
      ; Set cartesian type and segment intervall one second and length 3mm --> needed to stop on pause immediatly! ---by paulg4h
      M669 K0 S1 T3
      
      ; Drives
      M569 P0 S0                     ; physical drive 0 goes forwards using default driver timings
      M569 P1 S1                     ; physical drive 1 goes forwards using default driver timings
      M569 P2 S1                     ; physical drive 2 goes forwards using default driver timings
      M584 X0 Y2 Z1                  ; set drive mapping
      M350 X16 Y16 Z16 I1            ; configure microstepping with interpolation
      M92 X80.00 Y80.00 Z400.00      ; set steps per mm
      M566 X6000.00 Y6000.00 Z60.00    ; set maximum instantaneous speed changes (mm/min)
      M203 X25000.00 Y25000.00 Z180.00 ; set maximum speeds (mm/min)
      M201 X1500.00 Y1500.00 Z20.00    ; set accelerations (mm/s^2)
      M906 X400 Y1200 Z600 I30      ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                         ; Set idle timeout
      
      ; Axis Limits
      M208 X0 Y0 Z0 S1                 ; set axis minima
      M208 X330 Y395 Z40 S0            ; set axis maxima
      
      ; Endstops
      M574 X1 S1 P"xstop"                                ; configure active-high endstop for low end on X via pin xstop
      M574 Y1 S1 P"ystop"                                ; configure active-low endstop for low end on Y via pin ystop
      M574 Z1 S1 P"zstop"                                ; configure active-high endstop for low end on Y via pin ystop
      
      ;############## Laser Settings ######################### ---by paulg4h
      M452 C"servo0" R255 S1 F5000                     ; laser uses servo pin,  PWM frequency 5kHz
      
      M950 P0 C"e0heat"									;
      M42 P0 S1											; Set Pin PD12 to On
      
      ; Tools
      M563 P0 D0 F0                  ; 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
      
      ; Custom settings for triggers: laser pauses when "enclosure"-trigger fires, and steppers are disabled when a trigger inside is fired (when you want the laser to start from a specific point)
      ; Input/Output
      M950 J1 C"^xmax" ; Input 1 uses zmax pin, inverted, pullup enabled
      M581 P1 S0 T1 R1    ; Pause - built-in, no trigger.g needed
      
      M950 J4 C"!^ymax" ; Input 4 uses ymax pin, inverted, pullup enabled
      M581 P4 S0 T4 R0    ; Disable Steppers - trigger4.g
      
      

      So if anyone has an idea, im very grateful for every hint.

      Cheers and have a nice sunday,
      eponra

      jay_s_ukundefined 1 Reply Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @eponra
        last edited by

        @eponra you may want to update your firmware to 3.5.2 first. Then post the output of M122, M122 P200 and M98 P"config.g"
        Also, what drivers are you running on Z? Make and model please

        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

        eponraundefined 1 Reply Last reply Reply Quote 0
        • eponraundefined
          eponra @jay_s_uk
          last edited by

          @jay_s_uk

          Firmware and DWC is updated to 3.5.2 now.

          Output of M122:

          === Diagnostics ===
          RepRapFirmware for STM32F4 based Boards (cdy3_f4) version 3.5.2 (2024-06-13 00:54:12) running on STM32F4 (standalone mode)
          Board ID: Z00A2-0N17A-G8MV0-6MTFN-F42UW-70000
          Used output buffers: 2 of 40 (40 max)
          Error in macro line 50 while starting up: bad drive number
          === RTOS ===
          Static ram: 21828
          Dynamic ram: 90164 of which 1260 recycled
          Never used RAM 16792, free system stack 167 words
          CCMRam static ram: 24680 dynamic ram: 34228 free ram 6624
          Tasks: NETWORK(2,nWait 7,10.3%,177) LASER(5,nWait 7,0.0%,269) HEAT(3,nWait 6,0.0%,402) Move(4,nWait 6,0.0%,357) TMC22xx(4,nWait 6,0.0%,144) FSWRITE(2,nWait 4,0.2%,448) MAIN(1,running,89.3%,552) IDLE(0,ready,0.1%,29), total 100.0%
          Owned mutexes:
          === Platform ===
          Last reset 00:13:42 ago, cause: software
          Last software reset details not available
          Error status: 0x04
          MCU temperature: min 37.0, current 40.7, max 42.0
          Supply voltage: min 24.1, current 24.3, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes
          Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/28/0, gc cycles 0
          Events: 0 queued, 0 completed
          Driver 0: not present
          Driver 1: not present
          Driver 2: 
          Driver 3: 
          Driver 4: 
          Driver 5: 
          Driver 6: 
          Driver 7: 
          Driver 8: 
          Driver 9: 
          Driver 10: 
          Driver 11: 
          Driver 12: 
          Driver 13: 
          Date/time: 2024-08-18 20:29:17
          Slowest loop: 23.51ms; fastest: 0.14ms
          === Storage ===
          Free file entries: 20
          SD card 0 detected
          SD card longest read time 7.9ms, write time 9.8ms, max retries 0
          === Move ===
          DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00
          no step interrupt scheduled
          Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0
          === DDARing 0 ===
          Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
          === DDARing 1 ===
          Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
          === Heat ===
          Bed heaters -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
          === GCodes ===
          Movement locks held by null, null
          HTTP is idle in state(s) 0
          Telnet is idle in state(s) 0
          File is idle in state(s) 0
          USB is idle in state(s) 0
          Aux is idle in state(s) 0
          Trigger is idle in state(s) 0
          Queue is idle in state(s) 0
          LCD is idle in state(s) 0
          SBC is idle in state(s) 0
          Daemon is idle in state(s) 0
          Aux2 is idle in state(s) 0
          Autopause is idle in state(s) 0
          File2 is idle in state(s) 0
          Queue2 is idle in state(s) 0
          Q0 segments left 0, axes/extruders owned 0x0000000
          Code queue 0 is empty
          Q1 segments left 0, axes/extruders owned 0x0000000
          Code queue 1 is empty
          === CAN ===
          Disabled
          Longest wait 0ms for reply type 0, peak Tx sync delay 0 free buffers 0 (min 0), ts 0/0/0
          Tx timeouts 0,0,0,0,0,0
          === Network ===
          Slowest loop: 26.94ms; fastest: 0.00ms
          Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0)
          HTTP sessions: 1 of 8
          Uploads/Errors: 58/3
          === WiFi ===
          Interface state: active
          Module is connected to access point 
          Failed messages: pending 0, notrdy 0, noresp 0
          Bad header: 0/0
          Firmware version 1.26-08S32-D
          MAC address 30:d3:2d:be:63:fd
          Module reset reason: Power up, Vcc 0.00, flash size 0, free heap 147860
          WiFi IP address 192.168.178.48
          Signal strength -41dBm, channel 0, mode 802.11n, reconnections 0
          Clock register 00000000
          Socket states: 0 0 0 0 0 0 0 0
          

          Output of M122 P200

          === Diagnostics ===
          RepRapFirmware for STM32F4 based Boards version 3.5.2 running on STM32F4 (standalone mode) at 168Mhz
          Bootloader: Unknown
          
          == Configurable Board.txt Settings ==
          board = cdy3_f4
          board.longName = Fly CDYv3 STM32F4
          leds.diagnostic = NoPin
          leds.diagnosticOn = true
          leds.activity = NoPin
          leds.activityOn = true
          pins.SetHigh = {NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          pins.SetLow = {NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          stepper.powerEnablePin = NoPin
          stepper.enablePins = {C.1, C.14, B.8, D.7, D.4, D.0, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          stepper.stepPins = {E.5, E.4, E.3, E.2, E.1, E.0, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          stepper.directionPins = {C.0, C.13, B.7, D.6, D.3, A.15, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          stepper.digipotFactor = 0.00
          stepper.TmcUartPins = {C.15, A.8, B.6, D.5, D.1, E.9, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          stepper.DriverType = {tmcuartauto, tmcuartauto, stepdir, stepdir, stepdir, stepdir, stepdir, stepdir, stepdir, stepdir, stepdir, stepdir, stepdir, stepdir}
          stepper.numSmartDrivers = 2
          stepper.num5160Drivers = 0
          stepper.spiChannel = 2
          stepper.csDelay = 0
          stepper.TmcDiagPins = {NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          heat.tempSensePins = {B.1, A.3, C.4, D.14, NoPin, NoPin, NoPin, NoPin, NoPin}
          heat.spiTempSensorCSPins = {NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin, NoPin}
          heat.spiTempSensorChannel = 255
          heat.thermistorSeriesResistor = 4700.00
          atx.powerPin = NoPin
          atx.powerPinInverted = false
          atx.initialPowerOn = true
          sdcard.internal.type = 2
          sdCard.internal.spiFrequencyHz = 25000000
          sdCard.external.csPin = NoPin
          sdCard.external.cardDetectPin = NoPin
          sdCard.external.spiFrequencyHz = 4000000
          sdCard.external.spiChannel = 255
          lcd.lcdCSPin = NoPin
          lcd.lcdBeepPin = NoPin
          lcd.encoderPinA = NoPin
          lcd.encoderPinB = NoPin
          lcd.encoderPinSw = NoPin
          lcd.lcdDCPin = NoPin
          lcd.panelButtonPin = NoPin
          lcd.spiChannel = 255
          SPI0.pins = {A.5, A.6, A.7}
          SPI1.pins = {B.13, B.14, B.15}
          SPI2.pins = {B.3, B.4, B.5}
          SPI3.pins = {E.15, NoPin, B.2}
          SPI4.pins = {NoPin, NoPin, NoPin}
          SPI5.pins = {A.13, E.15, A.14}
          8266wifi.espDataReadyPin = E.10
          8266wifi.TfrReadyPin = E.12
          8266wifi.lpcTfrReadyPin = E.12
          8266wifi.espResetPin = E.11
          8266wifi.csPin = B.12
          8266wifi.serialRxTxPins = {D.9, D.8}
          8266wifi.spiChannel = 1
          8266wifi.clockReg = 0
          8266wifi.moduleType = esp32
          wifi.espDataReadyPin = E.10
          wifi.TfrReadyPin = E.12
          wifi.espResetPin = E.11
          wifi.csPin = B.12
          wifi.serialRxTxPins = {D.9, D.8}
          wifi.spiChannel = 1
          wifi.clockReg = 0
          wifi.moduleType = esp32
          sbc.TfrReadyPin = NoPin
          sbc.csPin = NoPin
          sbc.spiChannel = 255
          sbc.loadConfig = false
          sbc.SBCMode = false
          serial.aux.rxTxPins = {NoPin, NoPin}
          led.neopixelPin = NoPin
          power.VInDetectPin = C.3
          power.voltage = 24
          accelerometer.spiChannel = 255
          can.spiChannel = 0
          can.csPin = NoPin
          can.spiFrequencyHz = 15000000
          
          == Defined Pins ==
          fan0,fan = A.0
          fan1 = A.1
          fan2 = A.2
          e0temp,t0 = A.3
          spi1sdcs,lcdss = A.4
          spi1sck,lcdsck = A.5
          spi1miso,lcdmiso = A.6
          spi1mosi,lcdmosi = A.7
          tx1,btnenc = A.9
          rx1,lcdrs = A.10
          lcdd6 = A.13
          lcdd7 = A.14
          bed,hbed = B.0
          bedtemp,tb = B.1
          lcden = B.2
          motsck = B.3
          motmiso = B.4
          motmosi = B.5
          laser = B.9
          zmin,zstop = B.10
          zmax,zstopmax = B.11
          probe = C.2
          poweradc = C.3
          e1temp,t1 = C.4
          e2temp,t2 = C.5
          xmax,xstopmax = C.6
          xmin,xstop = C.7
          btnen1 = D.8
          btnen2 = D.9
          ymax,ystopmax = D.10
          ymin,ystop = D.11
          e0heat,he0 = D.12
          e1heat,he1 = D.13
          e2heat,he2 = D.14
          status,neopixel = D.15
          servo0 = E.6
          spi1cs1 = E.7
          spi1cs2 = E.8
          lcdcd = E.13
          lcdd5 = E.14
          lcdd4 = E.15
          
          == Hardware Serial ==
          AUX Serial: Disabled 
          WIFI Serial: UART 3
          
          == PWM ==
          0:  Pin E.6 freq 0 value 0.000000
          1:  Pin D.12 freq 0 value 1.000000
          2: 
          3: 
          4: 
          5: 
          6: 
          7: 
          8: 
          9: 
          10: 
          11: 
          12: 
          13: 
          14: 
          15: 
          
          == Attached interrupt pins ==
          0: 
          1: 
          2: 
          3: 
          4: 
          5: 
          6: 
          7: 
          8: 
          9: 
          10: E.10
          11: 
          12: B.12
          13: 
          14: 
          15: 
          
          == MCU ==
          AdcBits = 14
          TS_CAL1 (30C) = 950
          TS_CAL2 (110C) = 1195
          V_REFINCAL (30C 3.3V) = 1492
          
          V_REFINT raw 6000
          V_REF  3.282400
          
          T_MCU raw 3961
          T_MCU cal 43.142857
          T_MCU calc 40.143013
          
          T_MCU raw (corrected) 3939
          T_MCU cal (corrected) 41.418365
          T_MCU calc (corrected) 38.440941
          Device Id 413 Revison Id 100f CPUId r0p1 
          
          == RAM ==
          RAM start 0x20000000 end 0x2001fffc
          CCMRAM start 0x10000000 end 0x1000fffc
          
          == USB ==
          Read overrun 0
          

          Output of M98 P"config.g"

          HTTP is enabled on port 80
          FTP is disabled
          TELNET is disabled
          Error: bad drive number
          Error: in file macro line 51: G10: Invalid tool number
          Error: in file macro line 52: G10: Invalid tool number
          

          Z is driven by a noname TMC2209 V3.0
          (from AliE; shoplink: https://www.aliexpress.com/item/1005004018605377.html )

          jay_s_ukundefined 1 Reply Last reply Reply Quote 0
          • jay_s_ukundefined
            jay_s_uk @eponra
            last edited by

            @eponra did you remove the diag pin?

            Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

            eponraundefined 1 Reply Last reply Reply Quote 0
            • eponraundefined
              eponra @jay_s_uk
              last edited by

              @jay_s_uk

              I thought i had cut the DIAG pins off on all of them, but it was still on.
              Now i cut that diag pin, and now Z moves for a second and then ends homing,
              m119 still shows a zprobe at min stop.

              On that note, in the "m122 p200"-output i see a under "Defined Pins" -> "probe = C.2".
              Is that the culprit?

              gloomyandyundefined 1 Reply Last reply Reply Quote 0
              • gloomyandyundefined
                gloomyandy @eponra
                last edited by

                @eponra None of your drivers are being detected correctly:

                Driver 0: not present
                Driver 1: not present
                Driver 2: 
                

                Post a picture of the board so that we can see what you have plugged in, also remove one of the drivers and post a picture of the jumpers that are under the driver. Also your board.txt file is incorrect it has :

                stepper.numSmartDrivers = 2
                

                But it looks like you (now) have 3 drivers. You need to fix that.

                Your tool definition:

                ; Tools
                M563 P0 D0 F0                  ; 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
                

                Is specifying an extruder drive D0, but you have no extruders defined, so you should probably remove the D0. That is causing errors in your config.g file that show up when you run M98 p"config.g".

                Post the output from M119 with Z away from the home switch, then press and hold the Z home switch and run M119 again and post the output from that.

                eponraundefined 1 Reply Last reply Reply Quote 0
                • eponraundefined
                  eponra @gloomyandy
                  last edited by eponra

                  @gloomyandy

                  I set all my steppers to normal operation, so i thought non-detect is normal.
                  Here is the picture with all 3 stepper drivers removed (i use Z1 and Z2 as Y1 and Y1, as i have two motors running Y):
                  a1273810-ca91-4630-b412-9709a1def5cb-image.png

                  Fixed board.txt to include 3 steppers (same here, thought thats only important if i want to use
                  any "smart/diag" features of the 2209´s).

                  Commented the Tool out.

                  M119 output with Z endstop manually triggered
                  and with Z not triggered (it doesnt hit the endstop anyway, as it only moves for 1sec on every homing cycle)
                  2962d9d3-1a54-44df-ad38-6a1b80f6db65-image.png

                  Ninjaedit:
                  (forgot the pic of the whole board)
                  2ccd4b11-2a85-4b76-9900-dcc7bc81ac8f-image.png

                  jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                  • jay_s_ukundefined
                    jay_s_uk @eponra
                    last edited by

                    @eponra if they are 2209s you should be running them in UART mode so change the jumpers
                    f7f563aa-e319-4fa9-9936-05d1039b549f-image.png

                    Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post
                    Unless otherwise noted, all forum content is licensed under CC-BY-SA