Welcome! Log In Create A New Profile

Advanced

Duet Electronics - Commissioning hardware and troubleshooting Firmware

Posted by RepRapRaj83 
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
August 18, 2015 12:19PM
Quote
dc42
How did you find the correction to the X tower position that you needed in Marlin?

Followed point 4 on this page: [delta-calibration.s3-website-us-west-2.amazonaws.com]

Print a test-object, measure it, double the value the value that differs from the other axis and negate/invert it. Very much like you do when manually calibrating the radius, subtract 2.2 times the difference between center Z-height and tower Z-height
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 13, 2015 06:53PM
Hi,

I'm working on a fork of the dc42 firmware that will have config files specific to a SeeMeCNC Rostock MAX v1/2, as well as the Trick Laser Rostock MAX METAL delta printers. That way, people with those printers can just download everything and it will be ready to go, with little or no editing. I may also bring in some elements of my parallel simulated annealing auto-calibration that I implemented in Smoothie, depending on how well this firmware's built-in auto-calibration works.

I've been having a little trouble figuring out the endstops. Rostock MAX etc. ship with connectors that put GND and STP next to each other, so I used some M-F jumper wires to fix that and now the LEDs are normally red, and turn off when I press the endstop switches. The LEDs work as I suppose they should. However, the firmware seems to be confused! X and Z report min rather than max, whereas Y correctly reads max.

Line in config.g:
M574 X2 Y2 Z2 S1 ; set endstop configuration (all endstops at high end, active low)

M119 output:

Nothing pressed -
Endstops - X: not stopped, Y: not stopped, Z: not stopped

X pressed (shows min rather than max) -
Endstops - X: at min stop, Y: not stopped, Z: not stopped

Y pressed (shows as expected) -
Endstops - X: not stopped, Y: at max stop, Z: not stopped

Z pressed (shows min rather than max) -
Endstops - X: not stopped, Y: not stopped, Z: at min stop

This is with a Duet 0.8.5 that I bought two weeks ago, running my fork of the dc42 firmware from three days ago. I haven't made any code changes, so it's still identical to the dc42 fork at this point, aside from the config file. I also have the expansion board and the PanelDue, but neither is connected at the moment.

Also, I have a vanilla endstop switch I'm using for a Z probe. It's wired to +5V from the power supply. Is the Duet 5V tolerant for the endstop input, or do I have to cut that wire and hook it up to the board's 3.3V pin?

In case it might help, here is the complete config.g file:
; Configuration file for big Kossel from Think3DPrint3D V0.1 Date 20150708 with revisions for Duet V0.8.5 by Tony
; and addition of 3 more drives and second PWM fan for testing

; Communication and general
M111 S0                             	; Debug off
M550 Rostock MAX Metal                 	; Machine name and Netbios name (can be anything you like)
M551 0123CHANGEME4567	        	; Machine password (used for FTP)
;M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED 	; MAC Address (better to let the board use its own!)

;*** Adjust the IP address and gateway in the following 2 lines to suit your network
M552 P192.168.1.20                  	; IP address
M554 P192.168.1.1                   	; Gateway
M553 P255.255.255.0                 	; Netmask

M555 P2                             	; Set output to look like Marlin
G21                                 	; Work in millimetres
G90                                 	; Send absolute coordinates...
M83                                 	; ...but relative extruder moves

;Turn off fans
M106 I1 ; fans are inverting
M106 S0 ; Turn off Fan 0 (backward compatible with older firmware)
M106 P1 S0 ; Turn off Fan 1

; Axis and motor configuration
M569 P0 S1				; X Drive 0 goes forwards
M569 P1 S1				; Y Drive 1 goes forwards
M569 P2 S1				; Z Drive 2 goes forwards
M569 P3 S1				; E0 Drive 3 goes forwards
M569 P4 S1				; E1 Drive 4 goes forwards
M569 P5 S1				; E2 Drive 5 goes forwards
M569 P6 S1				; E3 Drive 6 goes forwards
M569 P7 S1				; E4 Drive 7 goes forwards
;M569 P8 S1				; E5 Drive 8 goes forwards - not used with 2-fans version of firmware.

M574 X2 Y2 Z2 S1			; set endstop configuration (all endstops at high end, active low)

;*** The homed height is deliberately set too high in the following - you will adjust it during calibration. 
M665 R135.0 L169.0 B280 H400		; set delta radius, diagonal rod length, printable radius and homed height
M666 X0.00 Y0.00 Z0.00			; put your endstop adjustments here, as given by auto calibration 22/05/15
M92 X160 Y160 Z160			; Set axis steps/mm (80 for 1.8-degree steppers, 160 for 0.9-degree steppers)

; 1500mA is useful for standard NEMA17 1.8-degree steppers.
; 1000mA is useful for TriDPrinting 5.19:1 geared steppers (which you should really have on your extruders).
M906 X1000 Y1000 Z1000 E1000:1650:1650:1650:1000:1000:1000:1000 ; Set motor currents (mA); set each extruder explicitly

M906 I100				; Set motor idle factor to 100% while testing so they don't idle at all
M201 X1000 Y1000 Z1000 E1000		; Accelerations (mm/s^2) Set all E-motors the same
M203 X20000 Y20000 Z20000 E3600		; Maximum speeds (mm/min) Set all E-motors the same
M566 X1200 Y1200 Z1200 E1200		; Maximum instant speed changes mm/minute. Set all E-motors the same


; Thermistors
; Duet0.8.5 uses 4.7K resistors
M305 P0 T100000 B3974 R4700 H30 L0	; Put your own H and/or L values here to set the bed thermistor ADC correction
M305 P1 T100000 B4066 R4700 H30 L0	; Put your own H and/or L values here to set the 1st nozzle thermistor ADC correction
M305 P2 T100000 B4066 R4700 H30 L0	; Put your own H and/or L values here to set the 2nd nozzle thermistor ADC correction
M305 P3 T100000 B4066 R4700 H30 L0	; Put your own H and/or L values here to set the 3rd nozzle thermistor ADC correction
M305 P4 T100000 B4066 R4700 H30 L0	; Put your own H and/or L values here to set the 4th nozzle thermistor ADC correction
M305 P5 T100000 B4066 R4700 H30 L0	; Put your own H and/or L values here to set the 5th nozzle thermistor ADC correction
M305 P6 T100000 B4066 R4700 H30 L0	; Put your own H and/or L values here to set the 6th nozzle thermistor ADC correction

M570 S180				; Hot end may be a little slow to heat up so allow it 180 seconds

; Extruder steps/mm is 460.5 for a geared planetary (5.19:1) from TriDPrinting.com mounted to a SeeMeCNC EZ-Struder.

; Tool definitions for CHIMERA and CYCLOPS HOT-ENDS - Tools 0 and 1
M563 P0 D0 H1                       	; Define tool 0
G10 P0 S0 R0                        	; Set tool 0 operating and standby temperatures
M92 E663:460.5:460.5:460.5:460.5        ; Set extruder steps per mm explicitly for all the extruders - 5 for Duet085+Dt4 test

;*** If you have a dual-nozzle build, un-comment the next 2 lines
M563 P1 D1 H2                      	; Define tool 1
G10 P1 S0 R0                       	; Set tool 1 operating and standby temperatures

;*** With a Duex 4 add 3 more tools
M563 P2 D2 H3                       	; Define tool 2
G10 P2 S0 R0                        	; Set tool 0 operating and standby temperatures

M563 P3 D3 H4                       	; Define tool 3
G10 P3 S0 R0                        	; Set tool 0 operating and standby temperatures

M563 P4 D4 H5                       	; Define tool 4
G10 P4 S0 R0                        	; Set tool 0 operating and standby temperatures

;M563 P5 D5 H6                       	; Define tool 5 
;G10 P5 S0 R0                        	; Set tool 0 operating and standby temperatures

// Z probe and compensation definition
;*** If you have an IR zprobe instead of a switch, change P4 to P1 in the following M558 command
M558 P4 X0 Y0 Z0			; Z probe is a microswitch, Hall-O, FSRs, or similar
;M558 P1 X0 Y0 Z0			; Z probe is a DC42 Differential IR PCB and is not used for homing any axes
G31 X9.0 Y22.0 Z1.9 P500		; Set the zprobe height and threshold (put your own values here)

;*** If you are using axis compensation, put the figures in the following command
;M556 S78 X0 Y0 Z0         	        ; Axis compensation here

Edited 1 time(s). Last edit at 10/13/2015 06:58PM by 626Pilot.
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 14, 2015 03:37AM
Your config file looks OK to me. What does it report when you run M574 with no parameters? Does it do the same thing if you flash my precompiled 1.09k-dc42 binary?

Endstop microswitches should be connected to the outermost 2 pins of the 3 pin endstop connector on the Duet. If your looms have the usual Dupont or Molex KK connectors, you can easily remove pins from the shell and re-insert them in the correct position. For Dupont connectors you need to lift up the plastic barb slightly to free the pin. For Molex connectors you press on the metal barb in the rectangular slot.

The Duet inputs are NOT 5V tolerant! A microswitch Z probe should be connected to the E0 endstop connector, just like a normal endstop switch.

Edited 2 time(s). Last edit at 10/14/2015 03:40AM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 17, 2015 08:18PM
Looks like I missed a step. I flashed your latest binary, and it does seem to work.

What are the actual commands for testing the Z probe and running the calibration? I don't see anything in the Duet commissioning doc that says how to do this on a delta machine. (I feel it's a significant weakness of those documents that they assume every last person reading them is running an Ormerod printer.) That document has instructions specific to a Cartesian machine, which doesn't help me. I also don't know how to test the probe itself. M119 doesn't report whether it's triggered.

One of the reasons I liked Smoothie so much was that they have a wiki with information on everything ever, and everything is detailed very precisely. Is there a place like that where I can find documentation on your fork? Right now I have no idea how to proceed, or even where to look for better documentation.

I'd also like to know how to hook up the PanelDue. I see the dedicated port, which is nice. Which way does the connector go? I don't want to short anything out. (Edit: Figured out the red wire goes to the 5V pin.)

Edited 3 time(s). Last edit at 10/18/2015 02:22AM by 626Pilot.
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 18, 2015 03:08AM
Quote
626Pilot
Looks like I missed a step. I flashed your latest binary, and it does seem to work.

If it doesn't work at all, check that you downloaded the correct binary. It should be about 225kb. A common mistake with downloading binaries from Github is to right click on the link to the firmware and select Save As, which saves a copy of the HTML page describing the binary. You need to follow the link to the .bin file you want, then click the Raw button.

Quote
626Pilot
What are the actual commands for testing the Z probe and running the calibration? I don't see anything in the Duet commissioning doc that says how to do this on a delta machine. (I feel it's a significant weakness of those documents that they assume every last person reading them is running an Ormerod printer.) That document has instructions specific to a Cartesian machine, which doesn't help me. I also don't know how to test the probe itself. M119 doesn't report whether it's triggered.

The web interface and the PanelDue display the Z probe reading. For a switch this will be about 0 when not triggered and 1000 when triggered. If PanelDue is not present and the web interface is not being used, sending G31 will return the Z probe reading.

Quote
626Pilot
One of the reasons I liked Smoothie so much was that they have a wiki with information on everything ever, and everything is detailed very precisely. Is there a place like that where I can find documentation on your fork? Right now I have no idea how to proceed, or even where to look for better documentation.

I agree that the documentation of the Duet needs to be improved. I added wiki pages on configuring RepRapFirmware at [reprap.org], [reprap.org] and [reprap.org]. The gcodes it supports are documented at [reprap.org].

Quote
626Pilot
I'd also like to know how to hook up the PanelDue. I see the dedicated port, which is nice. Which way does the connector go? I don't want to short anything out. (Edit: Figured out the red wire goes to the 5V pin.)

I added a photo showing the connections to the dedicated PanelDue connector on the 0.8.5 Duet to the PanelDue fitting instructions yesterday.

Edited 5 time(s). Last edit at 10/18/2015 04:17AM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 18, 2015 04:14AM
Thanks - that helps a lot!

Is there a way to invert the pin for the Z probe? Mine reads 1000 normally and 0 when pressed. I was hoping to avoid re-soldering it.
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 18, 2015 04:20AM
Quote
626Pilot
Thanks - that helps a lot!

Is there a way to invert the pin for the Z probe? Mine reads 1000 normally and 0 when pressed. I was hoping to avoid re-soldering it.

I think sending M574 E1 S0 will do that.

Edited 1 time(s). Last edit at 10/18/2015 04:20AM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 18, 2015 04:53AM
Quote
dc42
I think sending M574 E1 S0 will do that.

It does indeed! Now it reads 0 when the switch is free, and 1000 when it's pressed.

I saw this in the calibration file:
G30 P0 X0 Y0 Z-99999 ; dummy probe, because the mechanical probe gives inaccurate results the first time it is used after deployment

When I type G32, it crashes into the bed, I assume during this step. Why would that be? I tried pressing the probe switch several times when it was on the way down, but it never actually stopped.

Edited 1 time(s). Last edit at 10/18/2015 04:54AM by 626Pilot.
Re: Duet Electronics - Commissioning hardware and troubleshooting Firmware
October 18, 2015 09:56AM
That command tells it to move to X=0 Y=0 Z=dive height and then probe. To test the probe, do a manual probe starting from the current position, by sending G30 without any parameters.

Until you have the machine calibrated, use the M558 command to set the dive height much higher than the default 3mm, for example send M558 H20 to set it to 20mm. Also make sure that the R, L and H parameters in your M665 command in config.g are approximately correct. The H parameter should be the nozzle height when the endstop switches are triggered.

Edited 2 time(s). Last edit at 10/18/2015 09:57AM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Sorry, only registered users may post in this forum.

Click here to login