First homing attempts failing.
-
smooth and correct distance
-
it even handles F10 as a feed rate. Extremely slow but made the correct dir and distance
-
Firmware Name: RepRapFirmware for Duet Ethernet
Firmware Electronics: Duet Ethernet 1.0
Firmware Version: 1.19.2 (2017-09-01)
Web Interface Version: 1.19 -
OK, so X motion is working correctly. What do you have in your homex.g file? If you send the commands in homex.g manually, one at a time, does it home X correctly?
-
; homex.g
; called to home the X axis
;
; generated by RepRapFirmware Configuration Tool on Sat Nov 25 2017 12:15:39 GMT-0500 (Eastern Standard Time)G91 ;relative moves
G1 z5 F3000 ; move head up
G1 X-295 F1500 S1 ;move -310 mm stop at switch
G1 X5 F1000 : move back slowly
G1 X-295 F360 S1 ;Move -310 stop at switch
G92 X0 ;tell firmware where we are
G90 ;absolute move
G0 X0 Z2.5 F1500 ; move to X to center z upno it performs g91 g1 z5 f3000 fails at g1 x-295 f1500 s1. i tried moving the s1 to the front, no change. with s2 it moves not with s1
-
s1 command limit checking not working. however switches are in good standing. insulated, tested responding in web interface and from m119 call, all check correct. something internal with this s1 checking is bad
-
yeah i'm gonna exchange the board through filastruder. The circuit between endstop input and mcu path is bad I guess. Or there is a bad chip somehow. It's nothing I've done nor anything firmware can help.
-
1. What EXACTLY does it do when you send G1 X-295 F1500 S1 ?
2. If you send M119 before that command, what does it report?
3. What type of endstop switches are you using?
-
Hoping that I don't get flamed for trying to help but here goes…........
Config.g has this M574 X2 Y1 Z1 E0:1 S1 ; meaning that the end stop switch for the X axis is at the high end. So doing this "G1 X-295 F1500 S1 ;move -310 mm stop at switch" - is going to send the X axis away from the switch, not towards it. It looks like it was correct in the earlier homex files where the X moves were positive. If the switch has in fact been moved to the low end, then the M574 line needs to be changed too.
Also, this line "G1 X5 F1000 : move back slowly" has a colon before the comment, not a semi colon.
-
first answer, it starts to move, than immediately stops. Less than a mm of travel. Than the x axis "head position indicator" from web control reports that x has made it's total travel distance to the end stop when it hasn't.
Second answer, m119 reports x end stop not stopped before the g1 command.
Third answer, as stated before, 1 switch at -x and 1 at x 295 both wired in series to the 2 outer pins of the end stop with magnetically shielded instrumentation grade wire. Both switches a bare normally closed like Omron brand with roll style levers. Dido for Y. All other wiring including steppers are twisted and routed away from all signal.
My switches are not the problem. My config and homing files have changed due to trying anything to work, but nothing does. It won't move because it views the end stops as already activated when they are clearly not. With every tool available showing then as not stopped, lit leds, m119 reports, and so on. After it finally does move as strikes a switch, it ignores it. This is true even when the travel during homing is the correct direct speed and S1 is present. It does not sense the switches from an internal firmware respect as far as motion control is concerned. From a data reporting respect it does properly interpret the switches and there actions. It's an internal MCU/ firmware bug. If it's been this way for 2 months despite everyone's attempts to solve it, it's an incurable problem, or no one has witness this bug yet. But I have!
-
This board should probable be sent directly to the individual who wants to prevent people from going through this hell that I has. a month of machining and mechanical work, pouring all my talent into a printer/router that is as mechanical accurate and powerful as a small cnc mill and 2 month fighting to configure a board that is simply incapable of performing it's job, due to a flaw of some sort. It has to be a hardware issue, and I mean the board not the printer. Last week I put the smoothie board back in and it worked great. They just don't support the features I require.
As I stated before, I have built 7 cnc machines before this unit. mach3, uccnc, usbcnc, arduino/ramp 1.4, smoothie, and Haas machine. Everyone of them took a day or two to configure, but I achieved success with everyone of them and everyone still work flawlessly except smoothie, because I switched to duet. And here I am. I'm not inexperienced in anyway. It's not me!
-
Another issue is that I report to this forum every answer requested, however the same questions keep being asked. I've answered about the end stop switch type 7 times in this post. I even uploaded the manufactures full specs for them. Word by word play by play detailed explanation of there wiring type, sent many config.g and homing files. I've answered timely and in-depth, withheld nothing and the response to my effort on this forum is more of the same questions, but no insight to the problem. I've performed gcode moves many times as asked and reported result in word and in file form. I've emailed detailed machine reports and put more effect into receiving a response to this issue than I'm willing to debt most users ever due. You would think the persons responsible for promoting this product and firmware, would want a resolution as well.
I understand there are a lot of people to help, but how long does a person have to be strong along thinking the an end insight only to understand the is no end, no answer? I've even offered compensation to help the effort. It appears not even paying for help will work. I still don't have a return shipment authorization to exchange the board for another.
-
@sjason1377
I have no affiliation to Duet - I'm just an end user like you. Twice now I've tried to help and pointed out issues that I have spotted with your configuration/homing files. Instead of any sign of gratitude all I see is lengthy rants. It seems to me that you haven't even bothered to read my posts and instead you just go on and on about it being a problem with the board and saying that "it's not me". The issues that I have spotted are with your homing and/or configuration files which I'm afraid to say are down to you. I would suggest that if you spent a little less time ranting and little more time paying attention to those who are trying to help you, that your problems would have been solved long ago. For my part, as you can't be bothered to read what I post and show no sign of gratitude, then I can't be bothered to try and help. Sorry. -
also I would say that you DO have a problem with your switches you state above that you have a switch at both ends of the travel and that they are wired as normally closed and in series with each other. This is not normal in a 3D Printer.
-
If you understand electrical you would understand the presence of 2 switches only enhances the chances for stopping an axis. Your covered physically at both ends. Normal means nothing. 3d printers are not normal. they by design and the codes they use are contarty to every success that main stream cnc has had for 30 years now. Are you people going to tell me that a $300.000,00 haas mill is built wrong? Or that the gcode used by that machine, that never allows an end stop to be struck is also wrong. Series wired switching mean 2 switches 1 trip signal. Doesn't matter where it gets hit. This board doesn't know where it is. Couldn't find it's way to either end without changing this terrible code it's asked to run. This is gcode that is a slapped together purely designed version of someone else success.
and as for you deckingman my rank wasn't directed toward you. It was at the person asking the same questions ignoring all the times I have already answered. Do you like being ignored? The things you pointed out effect nothing because that proof reading happened before your post. You point out things That have nothing to do with the elephant in the room. You also shouldn't ware your feeling on your sleeves, like we are on the play ground!
This is an example of real Gcode for homing. Axes coordinates are programed by controller learning it position by tripping a switch, not by stopping at a switch and written G92 into homing file to tell firmware where we are. The controller doesn't rely on us to provide that info, we already did that by giving it a "pair" of eyes "the 2 switches." It zeros the low end and registers the high for axis length. A measuring method not user input. The G28.1 is used there after just to check we didn't lose steps. Running G28 should only Happen 1 time ever. G28.1 happening at program start. Printers rely on user data to feel there way around. than stupid statements like printer should be built so it can't damage itself. Really? How about not letting that happen in the first place. You guys drive car build fairly safe than ignore safety when you drive, because you rely on the car? These are machines that need proper instruction. you can't measure as well as the printer. let it do that for you.
G28 & G30 Return to Home
A home position is defined (by parameters 5161-5166). The parameter values are in terms of the absolute coordinate system, but are in unspecified length units.
To return to home position by way of the programmed position, program
G28 X~ Y~ Z~ A~ B~ C~ (or use G30). All axis words are optional. The path is made by a traverse move from the current position to the programmed position, followed by a traverse move to the home position. If no axis words are programmed, the intermediate point is the current point, so only one move is made.G28.1 Reference Axis
Program G28.1 X~ Y~ Z~ A~ B~ C~ to reference the given axes. The axes will move at the current feed rate towards the home switch(es), as defined by the Configuration. When the absolute machine coordinate reaches the value given by an axis word then the feed rate is set to that defined by Configure>Config Referencing. Provided the current absolute position is approximately correct, then this will give a soft stop onto the reference switch(es
-
Hi Jason,
Having two NC switches wires in series, one at each end, is unusual but should work most of the time. It won't work if you are trying to home to the low end of the axis, and the head is already at the high end (or vice versa), because the high end switch will be triggered so the circuit will be open.
Ian (deckingman) has correctly pointed out that one of your homing file lines has a colon before the comment instead of a semicolon, and this needs to be corrected.
I think I have worked out the problem. In the config.g file that you posted on page 1, you are using a very high steps/mm (800) which is because you have specified x128 microstepping. If you set the XY microstepping to the default x16 with interpolation enabled (I1 in the M350 command), and the XY steps/mm to 100, I think it will work.
Currently, if you wish to home using high microstepping, you have to use a low homing speed. This is because the need to check endstop switches on every step adds a large overhead to the step pulse generation.
PS - I've just been reminded that some of the time, you have been using external drivers. If you are using external drivers at present, reducing microstepping in config.g won't work unless you reduce the microstep setting on your external drivers too. What you can do instead is reduce the homing speed, i.e. use a lower F parameter in the G1 S1 command.
HTH David
-
I had some similar strange things happening when setting up my Duet also, swore up and down it wasn't a switch problem because they appeared to be working correctly, but it was a switch problem ultimately.
My axis were set to NO (normally open) using an end switch similar to this http://www.dx.com/p/getech-mechanical-endstop-switch-module-v1-2-mechanical-limit-switch-for-3d-printer-switch-ramps-1-4-300266.
In the "Machine Properties" panel of the duet, the switch appeared to be working correctly, when triggered it would change its state to open/close. In my mind not a switch problem…
So for a test I took one of the switches and modified it to be just a normal 2 wire open/close switch in the NC (normally closed) position, fixed all my problems.
ampapa,
-
This is the current none working config.g as far as homing and S1 checking is concerned.
; Configuration file for Duet Ethernet (firmware version 1.17 to 1.19)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool on Sat Nov 25 2017 12:15:39 GMT-0500 (Eastern Standard Time); General preferences
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates…
M83 ; ...but relative extruder moves
M555 P1 ; Set firmware compatibility to look like RepRapFirmare
G31 X-40 Y25 Z1.5 P25
M208 X0 Y0 Z0 S1 ; Set axis minima
M208 X295 Y295 Z207 ; Set axis maxima; Endstops
M574 X1 Y1 S1 ; Set active low endstops
M574 Z1
M558 P5 X0 Y0 Z1 H5 F100 T2000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds
G31 P600 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
M557 X40:210 Y40:240 S20 ; Define mesh grid; Drives
M569 P5 S1 R1 T2 ; Drive 0 goes forwards
M569 P6 S2 R1 T2 ; Drive 1 goes forwards
M569 P7 S1 R1 T2 ; Drive 2 goes forwards
M569 P8 S1 R0 T2 ; Drive 3 goes forwards
M569 P9 S1 R0 T2 ; Drive 4 goes forwards
M569 P10 S1 R0 T2 ; Drive 5 goes forwards
M584 X5 Y6 Z7 E8:9:10 ; Apply custom drive mapping
M350 X16 Y16 Z16 E16:16:16 I0 ; Configure microstepping without interpolation
M92 X80 Y100 Z4800 E80:80:80 ; Set steps per mm
M566 X300 Y300 Z12 E120:120:120 ; Set maximum instantaneous speed changes (mm/min)
M203 X10000 Y10000 Z280 E1200:1200:1200 ; Set maximum speeds (mm/min)
M201 X400 Y400 Z150 E150:150:150 ; Set accelerations (mm/s^2)
M906 X2000 Y2000 Z2000 2000:2000:2000 ; Set motor currents (mA)
M84 S0 ; Disable motor idle current reduction; Heaters
M307 H7 A-1 C-1 D-1 ;disable heater 7 to free up for servo signal
M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
M143 H0 S80 ; Set temperature limit for heater 0 to 80C
M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1
M143 H1 S260 ; Set temperature limit for heater 1 to 260C; Tools
M563 P0 D0 H1 F0:1:2 ; Define tool 0 FAN 0,1,2 FOR EXTRUDER 0
M563 P1 D1 H1 F0:1:2 ; DEFINE TOOL 1 FAN 0,1,2 FOR EXTRUDER 1
M563 P2 D2 H1 F0:1:2 ; DEFINE TOOL 2 FAN 0,1,2 FOR EXTRUDER 2
G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
M568 P0 D0:1:2 S1 ; Enable mixing for tool 0,1,2
M567 P0 E0.33:0.33:0.34 ; Set mixing ratios for tool 0; Network
M550 Pkathy's printer ; Set machine name
M540 PBE:EF:DE:AD:FE:ED ; Set MAC address
M552 P192.168.2.9 S1 ; Enable network and set IP address
M553 P255.255.255.0 ; Set netmask
M554 P192.168.1.254 ; Set gateway
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable Telnet; Fans
M106 P0 S1 I0 F255 H1 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
M106 P1 S1 I0 F255 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned ON
M106 P2 S1 I0 F255 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on; Custom settings are not configured
; Miscellaneous
T0:1:2 ; Select first toolMy x homing
; homex.g
; called to home the X axis
;
; generated by RepRapFirmware Configuration Tool on Sat Nov 25 2017 12:15:39 GMT-0500 (Eastern Standard Time)G91 ;relative moves
G1 z5 F3000 ; move head up
G1 X-295 F1500 S1 ;move -310 mm stop at switch
G1 X5 F1000 ; move back slowly
G1 X-295 F360 S1 ;Move -310 stop at switch
G92 X0 ;tell firmware where we are
G90 ;absolute move
G0 X0 Z2.5 F1500 ; move to X to center z upWhy don't we try to explain why these 2 files fail if the board and current Ethernet firmware are all correct.
Machine pauses re-assigns a need axis concordant value than travel which ever way it wants and ignores the switch.
I'm using a scope between the end stop and switch and clear see 0.002 volts when switch is closed and 3.312 when open! My switch are fully holding the connector voltage to zero!I can't make the correction that was suggested early about micro setting, because I did that 3 days ago. Just plain old 16 time no interpolate. Same setting on drive. Next I whole step the thing, but that will fail too.
-
Thanks for posting your current config.g file.
You are using M584 to select drivers 5 and 6 as the X and Y drivers. M584 does not remap the endstop switch connections that are used, only the drivers. Therefore you still need to connect your X and Y endstop switches to the X and Y endstop connectors on the Duet. Is that where you have them connected? Or have you connected them to endstop connectors on the DueX5 instead?
-
The j33 and j32 connectors are the standard end stop connector that are normally used, center area of main duet board. I only have the simple expansion header board. Instruction state that that end stops are handled the same regardless of external drive config.