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

    CNC Spindle setup "Error: M950: Port must be on main board"

    Scheduled Pinned Locked Moved Unsolved
    Firmware installation
    2
    3
    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.
    • MaltAndMakeundefined
      MaltAndMake
      last edited by

      I'm upgrading an LPKF CNC router to a Duet control system. At the moment the main board is a 6XD (although this will change to a 6HC soon) and there is a 1HCL daughter board mounted on the x carriage. The 1HCL I want to use to:
      Run the Z axis stepper - working
      Input for Z axis end stop - working
      Run the spindle - not working
      Run the tool change motor - not tested

      I'm in the process of testing the spindle but get the following m950 error (M115 included since I know that's helpful):

      17/11/2022, 12:00:42	M950 R0 C"!123.out0" L62000
      Error: M950: Port must be on main board
      17/11/2022, 11:59:09	m115 b123
      Duet EXP1HCL firmware version 3.4.4 (2022-10-14 11:45:14)
      17/11/2022, 11:58:57	m115
      FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6XD FIRMWARE_VERSION: 3.4.4 ELECTRONICS: Duet 3 MB6XD v1.0 or later FIRMWARE_DATE: 2022-10-20 16:19:15
      17/11/2022, 11:58:54	Error: M950: Port must be on main board
      17/11/2022, 11:58:54	Error: M563: unconfigured spindle
      17/11/2022, 11:58:53	Connection established
      

      My config.g

      ; Configuration file for Duet 3 MB 6XD (firmware version 3.3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.3.14 on Wed Nov 16 2022 17:43:38 GMT+0000 (Greenwich Mean Time)
      
      ; General preferences
      G4 S2                           ; wait for 2 seconds for expansion boards to start
      M575 P1 S1 B57600               ; enable support for PanelDue
      G90                             ; send absolute coordinates...
      M83                             ; ...but relative extruder moves
      M550 P"Duet 3"                  ; set printer name
      M453                            ; set in CNC mode
       
      ; Drives
      M569 P0.0 S1                    ; physical drive 0.0 goes backwards
      M569 P0.1 S0                    ; physical drive 0.1 goes backwards
      M569 P123.0 S0                  ; physical drive 0.2 goes backwards
      M584 X0.0 Y0.1 Z123.0           ; set drive mapping
      M92 X2133.33 Y2133.33 Z2461.54  ; set steps per mm
      M566 X900.00 Y900.00 Z480.00    ; set maximum instantaneous speed changes (mm/min)
      M203 X9000.00 Y9000.00 Z3000.00 ; set maximum speeds (mm/min)
      M201 X2000.00 Y2000.00 Z20.00   ; set accelerations (mm/s^2)
      M906 X4000 Y4000 Z2000 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 X305 Y229 Z25 S0           ; set axis maxima
      
      ; Endstops
      M574 X1 S1 P"io1.in"            ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io1.in
      M574 Y1 S1 P"io3.in"            ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io3.in
      M574 Z1 S1 P"!123.io1.in"       ; configure switch-type normally open (e.g. microswitch) endstop for low end on Z via pin 123.io1.in
      
      ; Z-Probe
      M558 P0 H12 F120 T6000           ; disable Z probe but set dive height, probe speed and travel speed
      M557 X15:215 Y15:195 S20        ; define mesh grid
      
      ; Heaters
      M140 H-1                        ; disable heated bed (overrides default heater mapping)
      
      ; Fans
      M950 F0 C"out4" Q               ; create fan 0 on pin out4 and set its frequency
      ; M106 P0 C"Rear Input Fan" SNaN H-1   ; set fan 0 name and value. Thermostatic control is turned off
      
      ; Tools
      M950 R0 C"!123.out0" L62000     ; Set as CNC, Spindle 1 on 1HCL board IO
      M563 P1 S"Spindle 1" R0         ; Create tool 1 with spindle 0 and call it "Spindle 1"
      
      ; Custom settings
      ;Assumes 1HCL is set to CAN address 123 as default by jumpers rather than 121 as in RepRap config tool
      
                                      ; Set HCL OUT1 as tool change
                                      ; Set HCL TEMP0 as carriage temp
      

      In case it helps, the original setup used a DAC1005 with PWM output to the spindle. This post on LinuxCNC might be helpful to understand the original machine setup.
      I'm running a Raspberry Pi 3B SBC with separate power supply.

      Can anyone help with this?

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

        @MaltAndMake looks like spindles aren't supported on CAN boards.
        one for @dc42 to change in the firmware

        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

        MaltAndMakeundefined 1 Reply Last reply Reply Quote 0
        • MaltAndMakeundefined
          MaltAndMake @jay_s_uk
          last edited by

          @jay_s_uk thanks! Glad it wasn't a silly mistake on my part! I'll keep an eye out for the next update.
          @dc42 let me know if you'd like me to test anything

          1 Reply Last reply Reply Quote 1
          • Phaedruxundefined Phaedrux marked this topic as a question
          • First post
            Last post
          Unless otherwise noted, all forum content is licensed under CC-BY-SA