Printer: K1 speedy
The issue:
After configuring the gcode to move to the button and entering the correct values x/y it does not appear to work properly.
What happens:
The printer does the normal start gcode, auto bed level, heats up etc. When it goes to touch the button, it does 3 quick button presses, lets off for a moment, then presses and holds for a really long time. I can hear the cameleon ticking, but no filament is loaded or unloaded. Then the print head moves off as if it starts the print. I made sure that the cameleon is on mode 3, its homed properly before the print starts. If I manually press the switch I can successfully load/unload filament in the right directions. What am I doing wrong?
Heres my start gcode:
SET_FILAMENT_SENSOR SENSOR=filament_sensor ENABLE=0
SET_FILAMENT_SENSOR SENSOR=filament_sensor_2 ENABLE=0
M82 ;absolute extrusion mode
START_PRINT EXTRUDER_TEMP=[first_layer_temperature] BED_TEMP=[first_layer_bed_temperature]
G92 E0
; 3DChameleon Preload Extruder 1
; load filament 1 to extruder
G0 X206 Y216 F10000 ; move to button
; three quick button presses to cancel out any active commands
G0 Y219 F2000 ; press button
G4 P150 ; wait for 150 ms
G0 Y215 F2000 ; unpress button
G4 P150 ; wait for 150 ms
G0 Y219 F2000 ; press button
G4 P150 ; wait for 150 ms
G0 Y215 F2000 ; unpress button
G4 P150 ; wait for 150 ms
G0 Y219 F2000 ; press button
G4 P150 ; wait for 150 ms
G0 Y215 F2000 ; unpress button
G4 P150 ; wait for 150 ms
G0 Y219 F2000 ; press button
G4 P3200 ; wait for 7 pulses
G0 Y215 F2000 ; unpress button
G4 P2000 ; wait for it to home
; select T0
G0 Y219 F2000 ; press button
G4 P550 ; wait for 550 milliseconds
G0 Y215 F2000 ; unpress button
G4 P2000 ; all done
; load T0 for 28 seconds and into extruder
G0 Y219 F2000 ; press button
G4 P20000 ; wait for 27 seconds
G0 E50 F500 ; <<<--- adjust this E value to tune extruder loading
G0 X220 Y210 Z.2 F1000; move to extruders assigned purge line
G0 Y0 E60; purge the extruder.
G0 X219; purge the extruder.
G0 Y200 E105; purge the extruder.
G4 P2000 ; all done
SET_FILAMENT_SENSOR SENSOR=filament_sensor ENABLE=1
SET_FILAMENT_SENSOR SENSOR=filament_sensor_2 ENABLE=1
Thanks for the speedy and clear response bill! That seems to have been my problem. I am
Using a custom mount for the switch. The one that came with the device didn’t work I couldn’t get it attached properly. That’s the reason for the difference in distances
If it's working on the 3 quick pulses, but not on the longer ones, then I think what's happing is that it's just a little too close to the button. I'd also check to see if the button is really at the location you think it is.
If you're using our mount and our code, then it should have the button at exactly 220... but your code does not have it there... so something is definitely different.
A quick way to test is to insert a pause between the 3 pulses, the 7 pulses and the long press to load it. You can see if it moves off of the button (the red LED will turn off.) If it doesn't, then the code is moving to the wrong location for the button.
To validate that, after each of the G0 Y215 commands, add a G4 P3000 line, which will pause for 3 seconds. The LED should always be off during those commands... if it's not, the gcode is being told to go to the wrong location for the button.
So, if the LED stays on, then it's too close to the button... if it doesn't turn on or only does it part of the time, then your mount is not stable, or it's too far away.
Bill