#define END_EFFECTOR_HORIZONTAL_OFFSET 0 AND #define CARRIAGE_HORIZONTAL_OFFSET 0

Hello,

Some years ago I bought a Kossel Mini clone from Ali Express. It came with Marlin firmware but I updated to Repetier fairly quick.

I had some successful prints, however, due to the cheap hotend, I was experiencing frequent clogging which was off-putting so, I did not use it a lot and it was colecting dust for a few years.

My sun got interested in it and I decided to pull it out of hibernation to teach my son a bit about 3d printing. However, if it clogs up again like before, it's going to be annoying so, we decided to upgrade it with a better hotend, better extruder, z-probe etc.

I got a nice Creality Spider hotend for the upgrade and, to install it, I re-designed the hotend "mounting bracket", the piece that holds the hotend and hangs from the diagonal rods, not sure what it's called. Anyways, the new bracket had different dimensions so, I was looking to change this in the firmware.

In the Repetier-Firmware Configuration Tool, I entered the Diagonal Rod Length (DELTA_DIAGONAL_ROD) as well as the Horizontal radius when centered (ROD_RADIUS) and I was looking to also update the "Printer Radius" indicated on the picture, as this was the dimension that changed slightly with my hoten bracket design, however, there is no such setting in the Configuration Tool.

I compiled the firmware and dowloaded it and I found that in Configuration.h I have:

**************************
#define END_EFFECTOR_HORIZONTAL_OFFSET 0
#define CARRIAGE_HORIZONTAL_OFFSET 0
#define DELTA_MAX_RADIUS 70
#define ROD_RADIUS 107
#define PRINTER_RADIUS 107 
**************************

so, the PRINTER_RADIUS is set to the same value as ROD_RADIUS and, both END_EFFECTOR_HORIZONTAL_OFFSET as well as CARRIAGE_HORIZONTAL_OFFSET are set to "0".

I found this strange because, looking at the old Marlin Configuration.h file I had:

**************************
// Center-to-center distance of the holes in the diagonal push rods
#define DELTA_DIAGONAL_ROD 218.0// mm

// Horizontal offset from middle of printer to smooth rod center.
#define DELTA_SMOOTH_ROD_OFFSET 151// mm

// Horizontal offset of the universal joints on the end effector.
#define DELTA_EFFECTOR_OFFSET 24.0 // mm

// Horizontal offset of the universal joints on the carriages.
#define DELTA_CARRIAGE_OFFSET 22.0 // mm

// Effective horizontal distance bridged by diagonal push rods.
#define DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-DELTA_EFFECTOR_OFFSET-DELTA_CARRIAGE_OFFSET)
**************************
So, the 

END_EFFECTOR_HORIZONTAL_OFFSET AND CARRIAGE_HORIZONTAL_OFFSET are used to calculate the
DELTA_RADIUS in Marlin while, in Repetier, these seem to be ignored and the PRINTER_RADIU is set to the value
of the ROD_RADIUS.

A quick search revealed that, all Configuration.h files posted on the Forum have the same so, I'm guessing this
is normal, however, I wouldn't mind if someone would confirm this ans explain how this works.

Thanks in advance.
Kind regards,
Cornel.

Comments

  • Mathematically the END_EFFECTOR_HORIZONTAL_OFFSET and CARRIAGE_HORIZONTAL_OFFSET are not used in delta motion, so in config tool you enter result of equation as horizontal radius. 
  • Hello Repetier,

    Thanks for the reply.

    I guess the calculations are done differently in Repetier firmware than in Marlin and, to be honest, the configuration is much easier this waym not having to worry about those two additional parameters. I was just confused by the schematic drawing in the Configuration Toom that shows the Printer Radius as being the sum of the Horizontal Radius and the distance from the proximal end of the diagonal rod to the center of the end effector which, I believe it's the END_EFFECTOR_HORIZONTAL_OFFSET value in the Configuration.h file.

    Is there any scenario where one would have to enter a diffrent than 0 value for the two parameters: END_EFFECTOR_HORIZONTAL_OFFSET
    CARRIAGE_HORIZONTAL_OFFSET

    Thanks again for your input.
  • No, they are only used to calculate radius and if you set them zero you know all that can be meant is the result of your equation. They are no where used.
Sign In or Register to comment.