Octoprint gcode viewer offset

What is the problem?
Last night I setup a BLTOUCH onto my printer and I noticed that when using Simplify3D or Cura to send an object to print in Octoprint, GCode viewer is showing my object to be off the table about 5.0 X and Y, yet Cura (backup program) and Simplify3d (my main program) shows it displayed correctly.

What did you already try to solve it?

  1. Rebooted Computer, Octoprint (the whole pi), Ender 3 Pro
  2. Created a new profile in Simplify3D in case there was something new/different with my current profile. I did the same for my printer profile in Octoprint.
  3. I tried different gcodes in octoprint including ones that were still loaded before the bltouch was installed.
  4. In octoprint > Settings > Printer Profiles > My Ender 3 profile (the only profile i have now) > Print bed & build volume > Form Factor is set to Rectangluar and Origin is set to Lower Left. My dimentions are 220x220x250 per the Ender 3 build platform.
    The issue is either with Marlin or octoprint and right now i'm thinking its something with octoprint.

Logs (octoprint.log, serial.log or output on terminal tab, ...)

Additional information about your setup (OctoPrint version, OctoPi version, printer, firmware, ...)
Ender 3 Pro using the latest TH3D_UFW_U1.R2.11 marlin firmware.
Latest version of Simplify3D, Cura, Octoprint. I verified again last night everything is up to date.
IMGUR link to a couple of screenshots - https://imgur.com/a/8fThaQa

Thank You

"setup" is too vague. Please provide more details on the steps you took.

Did the Marlin firmware already have support for the BLTOUCH? If not, more details please.

There are four screens on an OctoPrint printer profile, you only posted one of them.

If you print the object, does it not have the offset (i.e. is it just the GCode viewer)?

There are errors in your OctoPrint.log that indicate an inadequate power supply (probably not relevant to this issue but should be addressed).

Please rerun your experiment with OctoPrint in "safe mode". There is a lot of "noise" in the log you posted caused by your addons.

Hey b-morgan,
I purchased the BLTouch kit which had the cables, mount and probe (everything). I installed it per the instructions and it works pretty good so far minus some fine tuning on the bed. That firmware required me to uncomment a couple of lines of code which enables the BLTOUCH and added BLTOUCH v3 which is what I have, as well as using the CUSTOM_PROBE option for designating my probes offset x and y from the extruder/hot end.

The only offset i'm aware of is in the Simplify3D G-Code tab. If i remove the -5.0 here, it will move the object up and to the right by 5.0 and look like it does in Octoprint, and this setting has alwasy been this way as it is slightly modified from the original profile it sets up for you for your printer.

I restarted octoprint in safe mode, loaded the file and printed. Also, i'm not sure about the power, its plugged in a new power strip right into the wall, only a small LED lamp and my PI is attached to it.

Here is a link to more screenshots of the software settings and more - https://imgur.com/a/3U2VBQN
Here is a link to the octoprint.log, i couldnt use pastebin because of the size - https://paste.ee/p/qQYvv if you have any other suggestions for pasting logs please let me know.

So it looks like it actually prints pretty good on the bed, except it prints too close to the bottom or front of the bed like in the picture. Its almost exactly on the line. I also swapped out the power to the Pi after the print just in case.

my startup script in Simplify3D:
G28 ; home all axes
G29; BLTOUCH mesh generation
G1 X0 Y0 Z 10 F6000
G1 X5 Y5 Z0.2 F3000 ; get ready to prime
G92 E0.0 ; reset extrusion distance
G1 X160 E15 F600 ; prime nozzle
G1 X180 F5000 ; quick wipe

Edit: After looking at the picture more closely because I was an idiot and didnt measure the print from the bed, it does look like its printing down and to the left more. Is the GCode Viewer "Top" of the screen, the bottom of the bed (towards me)?

I believe the GCode viewer shows 0,0 in the lower left and max X, max Y in the upper right. I'd slice an asymmetric object so you can easily tell top from bottom and left from right in the slicer and then slice and compare what the GCode viewer shows.

I had a similar offset issue with the GCode viewer and Simplify3D with my dual extruder. I mostly use CuraLE (LulzBot TAZ 6) which adjusts X and Y in the GCode coordinates sent when printing with the second nozzle. S3D by default does not adjust X and Y. It expects the firmware to do it (M218).

To get the GCode viewer to match the two slicers, I needed to define two profiles and specify different second nozzle offsets for each.

With a single extruder, you may have to live with the GCode viewer being off if the print is positioned correctly on the bed. If both are missing the mark, try adding an M218 offset so the firmware does the correction and remove the offset from S3D and Cura.

Thank you, yea for the most part it does print on the bed, i wouldnt mind moving it back just a little bit thought. I had to look up M218 since i'm still pretty new to this and the Notes say it requires 2 or more nozzles, so It doesn't look like it would work for the ender 3 unless that has changed and the documentation has not updated.

Are you sure you got the sign right on the nozzle offsets you inserted into the firmware? You could use M206 to adjust the position (or you could "lie" to the firmware and adjust where 0,0 actually ends up).

According to the code example yes.. i think :). So i'm reading this as, where is the probe according to the extruder. So my probe is 44mm to the left and 7mm to the front.

  *   Z Probe to nozzle (X,Y) offset, relative to (0, 0).
  *   X and Y offsets must be whole numbers.
  *   In the following example the X and Y offsets are both positive:
  *      +-- BACK ---+
  *      |           |
  *    L |    (+) P  | R <-- probe (10,10)
  *    E |           | I
  *    F | (-) N (+) | G <-- nozzle (0,0)
  *    T |           | H
  *      |    (-)    | T
  *      |           |
  *      O-- FRONT --+
  *    (0,0)

  #define X_PROBE_OFFSET_FROM_EXTRUDER -44  // X offset: -left  +right  [of the nozzle]
  #define Y_PROBE_OFFSET_FROM_EXTRUDER -7  // Y offset: -front +behind [the nozzle]

I looked at the imgur images but the paste.ee link didn't work (Malwarebytes blocked it on Windows and on Linux, it said the link didn't exist). I usually zip the log files before posting them here using the upload button. I also usually delete octoprint.log and serial.log before I start something that I want to post. This way, the files are only as long as they need to be and don't contain any irrelevant material. If you forgot, edit the files (using the timestamp) so you only post the "good" stuff.

Ahh i didnt even think about uploading directly to this as i'm used to using other sites :slight_smile: Attached is the log, i removed everything before the loading of Safe Mode.
octoprint.log (15.7 KB)

That worked much better. In the log is:

2019-06-06 15:06:27,948 - octoprint.plugins.pi_support - WARNING - This Raspberry Pi is reporting problems that might lead to bad performance or errors caused by overheating or insufficient power.
!!! UNDERVOLTAGE REPORTED !!! Make sure that the power supply and power cable are capable of supplying enough voltage and current to your Pi.

This is usually a sign of an inadequate power brick. It needs to provide a proper 5V, 2.5-3A. What you have is currently working, but there may be strange happenings in the future. If you believe you have the right power brick, then check your AC line voltage.

Hmm ok, ill see about getting another power adapter for it and find a heatsink or fan too.

Remember Marlin has a Offset for the Probe, any type;

You mean besides the offset i mentioned up top for letting marlin know where the bltouch is from the extruder? I saw there was offsets for the other probe as well but the one i mentioned up top was for the install of the BLTouch. Which offset are you referring to?

Opps I missed that , sorry
YES: * Z Probe to nozzle (X,Y) offset, relative to (0, 0).

  • X and Y offsets must be whole numbers

Yup and its at -44 for X and -7 for Y. So my BLTouch is to the front -7 and to the left -44.