End stop stuck - Z axis won't home anymore

I hadn’t used my AO-100 in a week. Last part I printed went without major trouble. I didn’t home the z axis then, it was about 35mm from the heated bed.

Tonight I turned the printer on, opened Pronterface, and homed all axes. Only the Z won’t go down. I can raise the Z using the +Z buttons (10, 1 or 0.1) in Pronterface, but it won’t go down. When clicking on the -Z buttons or the Z home button, I hear the sound it usually does when it is already at home position.

I had updated Slic3r to 0.9.10b and Pronterface to latest master from 2013-07-07. I noticed that before starting 3 or 4 prints the gcode did something really weird with the Z motor. Not sure how to describe it, but the motor seemed to grind or something for a couple of seconds. I wanted to ask about it but it slipped my mind.

I came back to Pronterface from 2013-01-09 but it didn’t change anything. I tried to look for Pronterface settings to delete them but didn’t find them anywhere (I’m using Ubuntu 12.04 LTS and the Pronterface folder is in my Home folder).

Now I fear this damaged the motor or something. :frowning:

config.ini

# generated by Slic3r 0.9.10b on Sun Jul 14 04:04:41 2013
avoid_crossing_perimeters = 0
bed_size = 184,190
bed_temperature = 0
bottom_solid_layers = 3
bridge_acceleration = 0
bridge_fan_speed = 100
bridge_flow_ratio = 1
bridge_speed = 60
brim_width = 0
complete_objects = 0
cooling = 1
default_acceleration = 0
disable_fan_first_layers = 1
duplicate = 1
duplicate_distance = 6
duplicate_grid = 1,1
end_gcode = M104 S0 ; turn off temperature\nG28 X0  ; home X axis\nM84     ; disable motors
external_perimeter_speed = 70%
external_perimeters_first = 0
extra_perimeters = 1
extruder_clearance_height = 20
extruder_clearance_radius = 20
extruder_offset = 0x0
extrusion_axis = E
extrusion_multiplier = 1
extrusion_width = 0
fan_always_on = 0
fan_below_layer_time = 60
filament_diameter = 2.89
fill_angle = 45
fill_density = 0.5
fill_pattern = rectilinear
first_layer_bed_temperature = 0
first_layer_extrusion_width = 200%
first_layer_height = 0.35
first_layer_speed = 60%
first_layer_temperature = 0
g0 = 0
gap_fill_speed = 20
gcode_arcs = 0
gcode_comments = 0
gcode_flavor = reprap
infill_acceleration = 0
infill_every_layers = 1
infill_extruder = 1
infill_extrusion_width = 0
infill_first = 0
infill_only_where_needed = 0
infill_speed = 60
layer_gcode = 
layer_height = 0.4
max_fan_speed = 100
min_fan_speed = 35
min_print_speed = 10
min_skirt_length = 0
notes = 
nozzle_diameter = 0.5
only_retract_when_crossing_perimeters = 1
output_filename_format = [input_filename_base].gcode
perimeter_acceleration = 0
perimeter_extruder = 1
perimeter_extrusion_width = 0
perimeter_speed = 30
perimeters = 2
post_process = 
print_center = 92,95
raft_layers = 0
randomize_start = 0
resolution = 0
retract_before_travel = 2
retract_layer_change = 1
retract_length = 1
retract_length_toolchange = 10
retract_lift = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 30
rotate = 0
scale = 1
skirt_distance = 6
skirt_height = 1
skirts = 2
slowdown_below_layer_time = 30
small_perimeter_speed = 30
solid_fill_pattern = rectilinear
solid_infill_below_area = 70
solid_infill_every_layers = 0
solid_infill_extrusion_width = 0
solid_infill_speed = 60
spiral_vase = 0
start_gcode = G28 ; home all axes\nG1 Z5 F5000 ; lift nozzle
support_material = 0
support_material_angle = 0
support_material_enforce_layers = 0
support_material_extruder = 1
support_material_extrusion_width = 0
support_material_interface_layers = 0
support_material_interface_spacing = 0
support_material_pattern = rectilinear
support_material_spacing = 2.5
support_material_speed = 60
support_material_threshold = 0
temperature = 0
threads = 2
toolchange_gcode = 
top_infill_extrusion_width = 0
top_solid_infill_speed = 50
top_solid_layers = 3
travel_speed = 130
use_relative_e_distances = 0
vibration_limit = 0
wipe = 0
z_offset = 0

Edit 2013/07/31: changed title to identify source of the problem.

sounds more like your z end stop is stuck in the closed position.

there might be an m-code that can poll the status of the switch.
…yup M119
http://reprap.org/wiki/G-code#M119:_Get_Endstop_Status

try that first.


BTW, grinding noise on a stepper is usually missing steps. and on the Z- axis it usually means it was commanded to go faster than it physically can. your max speed on Z in the firmware is probably set too high (setting it slower in pronterface will have no effect and g-code commands BTW)

Here’s the result of entering M119 in Pronterface’s console.

>>>M119
SENDING:M119
x_min:H x_max:H y_min:H y_max:H z_min:H z_max:H

I guess H means “homed”?

I moved the X and Y axis and hit M119 again, and the x_min and y_min values changed to “L”.

I pressed the z end stop button and it is working, I hear the double click. If it’s stuck in software, how do I unstuck it?

Thanks.

H might mean High, and L would be Low…as in the signal.

Try holding the switch in, and see if m119 shows it as L. perhaps it is setup backwards. But I am not sure how it could accidentally switch on you.

I would get out the multimeter and check to see if the switch, and then the wiring, is doing what it should. Maybe the wire got crushed and is shorting the switch out, so it thinks it is constantly on.

I tried it, no change, still showed as “H”.

I don’t own one, I’ve never done any electronics before. :confused:

OK I just did a few things: remove the Z stop from the circuit board (thanks Lulzbot people for labeling the wiring :slight_smile: ) and put it back, no change.

Then I removed the two M3 screws holding the switch to the x-end-clamp and had a look at it. I put it back and when tightening one of the screws, I heard a distinct “click”. Tried to home the Z axis again and this time it worked!

Somehow applying pressure to the switch case unstuck its closed state.

Man I am relieved. I’m now printing a part.

Thanks for the help.

My Z mechanical switch is acting up again. This time I had to fiddle with it a lot longer to make it work again.

I’ll purchase a multimeter and somehow learn to use it :blush: to be sure what the problem is but while I’m at it I want to be prepared and purchase a few spare mechanical switches in case the one on my Z axis is faulty.

My AO-100 uses the CANAL M140T01-A*05-00A shown here: http://www.c-components.com.tw/prodDetail.asp?id=68

I found a local electronics components store that has an almost identical switch apart for the color of the plastic case: http://www.acceselectronique.ca/lesite/product.php?id_product=2245&id_lang=1

Since I don’t know squat about electronics I prefer to ask, do you think it will be compatible?

Or should I go with the -02A which has a long metal lever rather than a small pin plunger? I noticed that the TAZ uses similar switches.

Thanks.

micro-switches are pretty much standard, and these machines are not using the full rated voltage of the switch, so no issue there. Go for whatever you can get locally…radio-shack sells them in my area.

I’ve also replaced my mechanical endstops with whatever I could find locally. Just make sure you match the wiring on NO or NC.