3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Locked
daveapplemotors
Posts: 76
Joined: Tue Aug 16, 2016 11:36 pm

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by daveapplemotors » Sat Mar 04, 2017 8:44 am

It is not easy to get the BL (or 3D) touch up and working. But it works fine and prints very well. It is not perfect and needs tweaking now and then but much less than manual bed leveling and using the stock Z stop.

If you have a Pro B then use sample Pro B file.

I agree that Geeetech should do a better job of helping. I asked for sample Pro A files and was ignored. Finally I used the Pro B file with suitable modifications.

Xalu
Posts: 19
Joined: Fri Dec 30, 2016 2:24 am

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by Xalu » Sat Mar 04, 2017 11:28 pm

Posting again to see if anyone has any suggestions as I am stumped.

I've checked the wiring and I know it to be good.

All commands work.

To put it simply, when I go to home the printer the pin goes down then goes back up as if it was detecting the print bed even though it didn't. The polarity is correct on my endstop wiring.

I got a replacement sensor assuming that was the issue but it's still having the same problem. "

I made a video.

Does anyone know any solutions to this issue? I used the FW file in the first post so I know the code is correct, unless something else needs to be changed there.

Thanks

cosmith
Posts: 52
Joined: Mon Dec 12, 2016 8:58 pm

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by cosmith » Sat Mar 04, 2017 11:33 pm

Have you edited pins.h?

Xalu
Posts: 19
Joined: Fri Dec 30, 2016 2:24 am

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by Xalu » Sat Mar 04, 2017 11:49 pm

cosmith wrote:Have you edited pins.h?
Yes, I used the FW zip in the first folder which includes the changes to pins.h

Xalu
Posts: 19
Joined: Fri Dec 30, 2016 2:24 am

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by Xalu » Sun Mar 05, 2017 12:16 am

I am using the GT2560 board for my printer. Could this possibly be part of the issue with the FW in the first post?

cosmith
Posts: 52
Joined: Mon Dec 12, 2016 8:58 pm

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by cosmith » Sun Mar 05, 2017 12:20 am

I wouldn't think so. I think those firmwares are for the GT2560 specifically. You could always try modifying the stock firmware instead.

menestrello
Posts: 4
Joined: Sun Feb 26, 2017 8:24 am

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by menestrello » Sun Mar 05, 2017 12:48 am

Older version of Marlin firmware are bugged and autoleveling don't work.
I've downloaded last RC (v 1.1.0 RC8) from github, made some changes in "configuration.h" and in "pins_ULTIMAKER.h", compiled and uploaded. ;)

!!!
Changes to made in configuration.h
!!!

Code: Select all

// The following define selects which electronics board you have.
// Please choose the name from boards.h that matches your setup
#ifndef MOTHERBOARD
  #define MOTHERBOARD 7
#endif

Code: Select all

/**
 * Select your power supply here. Use 0 if you haven't connected the PS_ON_PIN
 *
 * 0 = No Power Switch
 * 1 = ATX
 * 2 = X-Box 360 203Watts (the blue wire connected to PS_ON and the red wire to VCC)
 *
 * :{ 0:'No power switch', 1:'ATX', 2:'X-Box 360' }
 */
 #define POWER_SUPPLY 1
!!!
Please note that I've the E3D Hotend, CHANGE IT if you have the Geeetech original
!!!

Code: Select all

//
// original definition by GEEETECH
// -->> #define TEMP_SENSOR_0 1 <<--
//
// DEFINE PER E3D V6 HOTEND AS IN WEB PAGE http://wiki.e3d-online.com/wiki/E3D-v6_Assembly
// 5
#define TEMP_SENSOR_0 5
!!!
Search Thomas Sanladerer PID tuning video
!!!

Code: Select all

//===========================================================================
//============================= PID Settings ================================
//===========================================================================
// DEFAULT PER GEEETECH
    #define  DEFAULT_Kp 22.2
    #define  DEFAULT_Ki 1.08
    #define  DEFAULT_Kd 114

Code: Select all

//=============================================================================
//============================== Movement Settings ============================
//=============================================================================

#define DEFAULT_AXIS_STEPS_PER_UNIT   {80,80,400,93}  // default steps per unit for Ultimaker

#define DEFAULT_MAX_ACCELERATION      {3000,3000,20,10000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot.

#define DEFAULT_ACCELERATION          1000    // X, Y, Z and E acceleration in mm/s^2 for printing moves
#define DEFAULT_RETRACT_ACCELERATION  1000   // E acceleration in mm/s^2 for retracts
#define DEFAULT_TRAVEL_ACCELERATION   1000    // X, Y, Z acceleration in mm/s^2 for travel (non printing) moves

Code: Select all

//===========================================================================
//============================= Z Probe Options =============================
//===========================================================================
// The BLTouch probe emulates a servo probe.
// The default connector is SERVO 0. Set Z_ENDSTOP_SERVO_NR below to override.
#define BLTOUCH

// Z Servo Probe, such as an endstop switch on a rotating arm.
//#define Z_ENDSTOP_SERVO_NR 0
//#define Z_SERVO_ANGLES {70,0} // Z Servo Deploy and Stow angles
#define Z_SERVO_ANGLES {10,90} // Z Servo Deploy and Stow angles

// *USE YOUR VALUES*
// modificato da Sergio il 25/02/17
  #define X_PROBE_OFFSET_FROM_EXTRUDER -2     // Probe on: -left  +right
  #define Y_PROBE_OFFSET_FROM_EXTRUDER -20     // Probe on: -front +behind
  #define Z_PROBE_OFFSET_FROM_EXTRUDER -2  // -below (always!)

// X and Y axis travel speed (mm/m) between probes
// #define XY_PROBE_SPEED 8000
#define XY_PROBE_SPEED 1000

// Enable Z Probe Repeatability test to see how accurate your probe is
#define Z_MIN_PROBE_REPEATABILITY_TEST

// #define Z_CLEARANCE_DEPLOY_PROBE   10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_DEPLOY_PROBE    5 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES  5 // Z Clearance between probe points

Code: Select all

// @section machine

// Travel limits after homing (units are in mm)

// #define X_MIN_POS 0
// #define Y_MIN_POS 0
// #define Z_MIN_POS 0
// #define X_MAX_POS 200
// #define Y_MAX_POS 200
// #define Z_MAX_POS 200

// MY SETTINGS

// Travel limits after homing (units are in mm)
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS 195
#define Y_MAX_POS 200
#define Z_MAX_POS 200

Code: Select all

//#define AUTO_BED_LEVELING_3POINT
//#define AUTO_BED_LEVELING_LINEAR
//#define AUTO_BED_LEVELING_BILINEAR

#define AUTO_BED_LEVELING_LINEAR

  // Set the boundaries for probing (where the probe can reach).

  // #define LEFT_PROBE_BED_POSITION 15
  // #define RIGHT_PROBE_BED_POSITION 170
  // #define FRONT_PROBE_BED_POSITION 20
  // #define BACK_PROBE_BED_POSITION 170

  // 
  // modificato da Sergio il 25/02/17
    #define LEFT_PROBE_BED_POSITION 30 // 15
    #define RIGHT_PROBE_BED_POSITION 180
    #define FRONT_PROBE_BED_POSITION 40
    #define BACK_PROBE_BED_POSITION 180

Code: Select all

// - Allow Z homing only after X and Y homing AND stepper drivers still enabled.
// - If stepper drivers time out, it will need X and Y homing again before Z homing.
// - Move the Z probe (or nozzle) to a defined XY point before Z Homing when homing all axes (G28).
// - Prevent Z homing when the Z probe is outside bed area.

#define Z_SAFE_HOMING

Code: Select all

//
// EEPROM
//
// The microcontroller can store settings in the EEPROM, e.g. max velocity...
// M500 - stores parameters in EEPROM
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
//define this to enable EEPROM support
#define EEPROM_SETTINGS

Code: Select all

//
// SD CARD
//
// SD Card support is disabled by default. If your controller has an SD slot,
// you must uncomment the following option or it won't work.
//
//*MOD*
#define SDSUPPORT

Code: Select all

// Number of servos
//
// If you select a configuration below, this will receive a default value and does not need to be set manually
// set it manually if you have more servos than extruders and wish to manually control some
// leaving it undefined or defining as 0 will disable the servo subsystem
// If unsure, leave commented / disabled
//
//#define NUM_SERVOS 3 // Servo index starts with 0 for M280 command
// modificato da Sergio il 25/02/17
#define NUM_SERVOS 1
!!!
Changes to made in pins_ULTIMAKER.h
!!!

Code: Select all

//
// Servos
//

// #define SERVO0_PIN         13  // untested
//
#define SERVO0_PIN         32  // 12



//
// Limit Switches
//
#define X_MIN_PIN          22
#define X_MAX_PIN          24
#define Y_MIN_PIN          26
#define Y_MAX_PIN          28
#define Z_MIN_PIN          30
// #define Z_MAX_PIN          32
//
//
#define Z_MAX_PIN -1

Xalu
Posts: 19
Joined: Fri Dec 30, 2016 2:24 am

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by Xalu » Sun Mar 05, 2017 2:16 am

cosmith wrote:I wouldn't think so. I think those firmwares are for the GT2560 specifically. You could always try modifying the stock firmware instead.
Originally I started off with modding my firmware then switched over to the one here when I had issues.



I'll see about updating and using the BLTOUCH method.


Thanks :)

Xalu
Posts: 19
Joined: Fri Dec 30, 2016 2:24 am

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by Xalu » Sun Mar 05, 2017 3:49 am

So I used the marlin package Marlin-1.1.0-RC7 for PI3 Pro B7and made a couple changes based on the code listed above by menestrello (thank you again).

It's basically doing the exact same thing which leads me to believe something is going on at a hardware level. It's just strange that my mechanical endstops work fine. I also had inductive sensors before and those worked as well.

Anyone know if there any kind or tests and/or readings I can do to figure out the source of the issue?

daveapplemotors
Posts: 76
Joined: Tue Aug 16, 2016 11:36 pm

Re: 3D Touch Sensor:Auto-levelling for Geeetech 3D printer

Post by daveapplemotors » Sun Mar 05, 2017 5:07 am

I saw your video. What commands are you giving the printer to do what it did in the video?

Locked