Installing 3DTouch and setting it up on i3 Pro X

Post Reply
User avatar
Posts: 18
Joined: Wed Apr 10, 2019 8:38 am

Installing 3DTouch and setting it up on i3 Pro X

Post by macca448 » Tue Oct 29, 2019 12:53 pm

Another Update!!
Problems resolved. It wasn't the 3DTouch causing the issue but I've had to adjust motion setting and I discovered frame movement that created issues. Everything is documented in separate posts. In a reply below I'll show the motion settings I changed from the default that will be in the attached firmware.

Unfortunately getting a consistent level just isn't happening. I tried to implement the Auto Bed Leveling because I was having major issues getting and keeping a level bed. I have now found the reasons for that and have explained in another post here While everything looks like it works the Z height keeps changing and I'm unsure if it's the 3DTouch or Marlin causing the issue so I've gone back to plain micro switch end-stop on the Z Axis. I'll get a BLTouch and see if that is any better. There is an upside, I learnt a lot!!

______________________________________END UPDATE_______________________________________

Installing 3DTouch and setting it up with all the pain and frustration that goes with it.

In an earlier post after installing the filament run-out sensor I said I would eventually get round to installing the 3Dtouch and set up auto bed leveling. While it was a mission it's finally done and there was a HUGE learning curve that occurred so I though I'd better share in case any of you are thinking of the same thing. Along the way I discovered bent rails, loose bolts and weak springs. Guess it serves me right for buying second hand even though it hadn't been completely assembled it obviously had some hard knocks.

First up fitting the the 3DTouch to the front of the extruder carrage. Geetech have STL's you can download and I found the link in the user manual and you can download that here ... Manual.pdf
It's good for several of the GeeeTech i3 Clones.

#1 All the GeeeTech doc's and Wiki seem very old and out of date as it seems to refer to much earlier versions of Marlin. I'm running Marlin V1.1.9 and I found a good tutorial and more or less merged the info together. The second source of info was here ... -leveling/
#2 The offsets that GeeeTech say to use are just a starting point or they were for me
#3 I found that the 3DTouch scraped the bed after calibration so I shimmed the bracket with a piece of brass strip that was about 0.45mm thick so as to bring the probe above the first layer. Obviously I had to reduce the offset accordingly.
#4 For some reason that's beyond me I couldn't get Marlin to compile with the boundary variable the way they were written in the Configuration.h file. I gave up trying and just deleted the variables and put in absolute coordinates and it all burst into life, go figure. Side Note: To make sure I got as much of the bed in the boundary as possible I kept increasing till the compile failed due to out of boundary error.

And finally, once I got things working I found the 3DTouch quite unreliable and it alarmed every-other time and was about to toss it when I came across a thread that suggested adding ferrite beads. I didn't have any beads but had a ferrite ring off an old ESC in my hobby box so added it to the servo lead (4 or 5 turns) and things seem very stable now. It's clear that the Hot end heating is the source of the noise so it's good procedure to wait till your at temp. It only ever seemed to alarm right at the first drop point.

here is my build of Marlin now with both Filament Runout and Auto Bed Leveling but I caution all, check all important settings as everything varies machine to machine even same models.

(3.79 MiB) Downloaded 91 times

Probings is set to 3 x 3 and to do a double probe

3DTouch_1.jpg (221.91 KiB) Viewed 5778 times

and now we are off printing again finally!!

3DTouch_2.jpg (183.83 KiB) Viewed 5778 times
Last edited by macca448 on Sat Nov 09, 2019 11:34 am, edited 2 times in total.

User avatar
Site Admin
Posts: 6174
Joined: Tue Jun 07, 2016 9:38 am

Re: Installing 3DTouch and setting it up on i3 Pro X

Post by William » Tue Oct 29, 2019 1:12 pm

:D wow, thanks for your share.
enjoy print.
-Keep your mind and try to test it. :)
-Everything will be fun!-Support all Getech printer.
-You can ask me the questions and I will kindly reply.
-Respect others is the best way you can get help!

User avatar
Posts: 18
Joined: Wed Apr 10, 2019 8:38 am

Re: Installing 3DTouch and setting it up on i3 Pro X

Post by macca448 » Wed Oct 30, 2019 1:56 am

Thank you William

The learning curve continues and I think I better finish this story for our forum friends so they don't fall into the same trap as I did. Also it's very important to do any calibrations with your printer at full temperature. I tend to wait an extra 10 to 15 minutes extra after reaching temp to make sure all heat expansion has occurred.

First up I doubled the shim on the mount to about 0.9 mm and my nozzle offset is now "-2.07" but note this is relative to my bed height setting with the shim installed and you will need to do your own calibration for this.

The M500 command is an important option to enable for the "Auto Bed Leveling" feature and it is enabled in my attached code. Additionally you will need to make some changes to your "START GCODE" by adding an M420 string straight after the G28 "AUTO HOME" command. I did all this so that SD card prints work correctly.

I use Repetier Host slicer with the CURA Engine.

When you do the M28 followed by M29 auto bed level sequence the Mesh data is only in RAM and if you are happy with the result you should issue the M500 command to save it to the EPROM. That way when your controller restarts it will reload your last saved mesh along with other variables you may have changed. Two other commands you may want are M501 (Reload last saved data) and M502 (Reset to defaults)

Once you are happy with your setup and it's saved into the EPROM you need to add the line "M420 S1 Z3" directly after the G28 string in your start gcode. Here is my start code as an example:-

; Default start code

Code: Select all

G28 ; Home extruder
M420 S1 Z3 ; Recalls Saved Bed level
M107 ; Turn off fan
G90 ; Absolute positioning
M82 ; Extruder in absolute mode
; Activate all used extruder
{IF_EXT0}M104 T0 S{TEMP0}
G92 E0 ; Reset extruder position
; Wait for all used extruders to reach temperature
{IF_EXT0}M109 T0 S{TEMP0}

The M420 S1 string recalls the saved bed level data and the Z3 sets the "#define ENABLE_LEVELING_FADE_HEIGHT" which should be enabled so you don't do an entire print parallel to the bed anomalies meaning that after 3mm in my example bed leveling data is ignored and it prints parallel to the bed again.

I must admit that this is still a work in progress but I think that is the nature of 3D printing anyway as there is always something else that needs

That's it!! Happy printing!!

User avatar
Posts: 18
Joined: Wed Apr 10, 2019 8:38 am

Re: Installing 3DTouch and setting it up on i3 Pro X

Post by macca448 » Sat Nov 09, 2019 12:23 pm

After installing the 3DTouch I started to get Y layer slippage and I thought I'd go back to square 1 to figure out the problem. The problem was in the Motion settings.

Here is what I found and am using now. The "SLOW" setting is from the REPRAP support forum.

motion_settings.png (10.38 KiB) Viewed 5468 times

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests