G’day, Dan,
thank you for the quick reply to my query.
I confirm that I’m using the firmware from the V1 website:- V1CNC_SkrPro_Dual_2209.
I initially loaded the .bin file that was included within the zip file but found I was having problems so fired up Visual Studio Code & Platform IO, modified the Configuration.h file to my requirements, and reflashed the SKR-Pro board.
I followed your suggestion and checked the resistance between the “+” and “S” on the limit switch sockets but came up with an infinity reading on all instances.
Following is the copy of the configuration.h file as loaded into my machine at the moment, lines 622 to 669 inclusive.
** note that I have added // comments if I changed something.
The changes made are to facilitate the “Z” axis homing in a positive direction in relation to the wasteboard. It also shows, I believe, that the “Pullup Resistors” are enabled.
// @section homing
// Specify here all the endstop connectors that are connected to any endstop or probe.
// Almost all printers will be using one per axis. Probes will use one or more of the
// extra connectors. Leave undefined any used for non-endstop and non-probe purposes.
#define USE_XMIN_PLUG
#define USE_YMIN_PLUG
//#define USE_ZMIN_PLUG //JPH changed to Undefined
#define USE_XMAX_PLUG
#define USE_YMAX_PLUG
#define USE_ZMAX_PLUG
// Enable pullup for all endstops to prevent a floating state
#define ENDSTOPPULLUPS
#if DISABLED(ENDSTOPPULLUPS)
// Disable ENDSTOPPULLUPS to set pullups individually
//#define ENDSTOPPULLUP_XMAX
//#define ENDSTOPPULLUP_YMAX
//#define ENDSTOPPULLUP_ZMAX
//#define ENDSTOPPULLUP_XMIN
//#define ENDSTOPPULLUP_YMIN
//#define ENDSTOPPULLUP_ZMIN
//#define ENDSTOPPULLUP_ZMIN_PROBE
#endif
// Enable pulldown for all endstops to prevent a floating state
//#define ENDSTOPPULLDOWNS
#if DISABLED(ENDSTOPPULLDOWNS)
// Disable ENDSTOPPULLDOWNS to set pulldowns individually
//#define ENDSTOPPULLDOWN_XMAX
//#define ENDSTOPPULLDOWN_YMAX
//#define ENDSTOPPULLDOWN_ZMAX
//#define ENDSTOPPULLDOWN_XMIN
//#define ENDSTOPPULLDOWN_YMIN
//#define ENDSTOPPULLDOWN_ZMIN
//#define ENDSTOPPULLDOWN_ZMIN_PROBE
#endif
// Mechanical endstop with COM to ground and NC to Signal uses “false” here (most common setup).
#define X_MIN_ENDSTOP_INVERTING false
#define Y_MIN_ENDSTOP_INVERTING false
#define Z_MIN_ENDSTOP_INVERTING true
#define X_MAX_ENDSTOP_INVERTING false
#define Y_MAX_ENDSTOP_INVERTING false
#define Z_MAX_ENDSTOP_INVERTING true //JPH changed from false
#define Z_MIN_PROBE_ENDSTOP_INVERTING true
The M119 command correctly reflects the state of each of the limit switches in either the “open or TRIGGERED” states, as do the LED indicators on the circuit board.
With regard to the connectors, I am using the JST-XH terminals and although I have the correct crimping tool for them, I find that I get a much more secure crimp by closing the wings over the cable with needle-nose pliers before finally crimping with the tool.
I have also found that if I manually move the core assembly away from the “X” and “Y” stops by a couple of hundred mm, reflash the board with the .bin file, (change from .CUR to .bin) then ask via the LCD 12864 simulator screen to AUTO HOME, it will perform the task correctly, but after the first successful attempt, trying to auto home again will usually produce the fault.
Once successfully homed, running a job and moving the axis’ with CNCjs doesn’t usually create a problem.
Your thoughts now?
John H.