I'm a little confused here... Homing moves the X and Y axes to 0,0 first. The Z axis IR endstop on the dual hybrid titan head is on the left (i.e. beyond X0). That means that when it starts homing the bed (Z-axis), the IR endstop can't see it, because it's parked above the upper support of the case, well away from the actual bed surface. How is this supposed to work? What am i missing here? Did someone forget to enable #define Z_SAFE_HOMING in the marlin configuration?
Nope. I assumed (yeah, yeah, i know, mother of all f***ups) it would be set to home the Z at 100x150 (i.e. Z_SAFE_HOMING on) regardless of the firmware version, as a safe bet. Luckily, i kept my hand on the switch and just killed it when i saw it stop at 0,0
RC3 for the dual had mesh bed leveling, #define Z_SAFE_HOMING was not available to MBL until RC6 so even if it was set it had no effect, only for ABL. You want https://github.com/Alex9779/Marlin/tree/BigBox/Dual/RC_Hybrid_Titan_MBL (to compile by yourself following this guide) or https://jenkins.alitecs.de/job/BigB...ld/Marlin.BigBox_Dual_Hybrid_Titan_MBL-RC.hex (pre-compiled following this and maybe this) or you use http://russemotto.com/xloader/ on Windows or http://paulkaplan.me/HexUploader/ on Mac to upload the firmware when you connected your RUMBA directly via USB to your PC...
Thanks! Don't particularly care for either ABL or MBL, never liked the idea of the Z axis constantly moving during a print on my old printer (call me old fashioned, but there's something about relying on 0 Z backlash that just rubs me the wrong way, plus, the Z rounding errors don't quite help the layer evenness either). I'll give MBL a try, though, maybe i warm up to it, especially considering the size of the bed. I'm using platformio, but i stupidly updated it just now and it turns out the latest version of pyserial (3.1) is broken (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=826078)
Seen. I'm using git, so it's just a matter of switching to the ABL branch. That + your repo with all the configurations in separate branches + platformio = very fast experimentation Calling it a day (night, technically) for now, though. I need to grease everything and i'm out of lithium soap grease. And i dismantled the Y stepper because i want to insulate it further so its casing doesn't ring against the bracket. The way it sounds currently, the fillings are vibrating out of my teeth when i jog the Y axis.
All set up and homing fine. One thing, though - i've read your explanation of what you're designating "mirrored" setup, but one thing still doesn't quite click for me. In the NON-mirrored setup (RC_Hybrid_Titan_MBL branch), you have the RIGHT extruder set up as extruder 1 and the LEFT extruder as extruder 2. However, after homing, you've got it set up so that the LEFT extruder ends up at 0,0, not right. In other words, Extruder 2 is used as the coordinate system datum. Wouldn't it make more sense to have the RIGHT, i.e. Extruder 1 set up as the datum?
Are you talking about the firmware? The only thing that is different is the build volume and a probe offset I think. You don't assign extruders in the firmware config to left or right...
If the right extruder goes to 0,0, then the z-gauge is over the case and not the z plane. Or does that matter when going to home on x,y,z?
Yes, talking about the firmware. You can swap left and right by customizing pins*.h for RUMBA and swapping the pin assignments. But that doesn't really matter - what matters is this: 1) right hotend is hotend 1 2) set the endstop so when endstop is triggered, hotend 1 is above 0,0 on the bed 3) home all axes 4) G1 X0 Y0 5) you will see that hotend 2 (left hotend) is now above 0,0, NOT the right hotend In other words, homing offsets are set up so that the LEFT hotend ends up as the datum, instead of right - after homing, the offset of the left hotend is applied to the 0,0 homing position. Not sure if i'm being any clearer.
The right extruder does go to 0,0, but the homing position for Z axis is not at 0,0 (and should not be). That's not the issue - the issue is that after homing, the offset between the two hotends is applied as the homing offset.
Sorry I don't get your problem. I checked the config of the branch you mentioned the Xmin is set to -38. Yes the right goes to 0,0 but it just looks as such. The machine hit the XY endstop a and when it does that point is saved as -38,0. Then it moves to the save Z home position which is at 30,30. So after a G28 or a Auto Home from the LCD the left nozzle should be at 30,30,0... I never changed the PIN assignment. That would make the thing much more confusing. And I see no point in changing that. Marlin's hotend 0 is connected to HE0 and all related 0-ports, hotend 1 to HE1 and related 1-ports.
Ok, so maybe I'm having a different problem. Every time I do Auto Home it finds the X and Y stops but drops the bed about 5mm. If I try to move the bed it's set at 0.0 and I can't move it up towards the print heads.
Ya that's different. Move the bed up by turning the lead screws manually until it touches the nozzle. Move the nozzle from left to right and adjust the lead screw on each side so that the nozzle touches the bed on each side. Then adjust you IR sensor doing the "belt method". After that level the bed...
@Alex9779 , that's exactly what I did. I'll check that the IR sensor is plugged in correctly and try it again. Edit: Oops, I didn't level the bed. Maybe I didn't do exactly that!
I never said you changed the pin assignment. I'm saying you should, if you want to keep things consistent. The way you have the non-mirrored configuration set up now (unlike the mirrored one), it makes no sense at all. Let me try and explain again. Using the NON-mirrored configuration, after homing, the FIRST tool of the CNC machine is NOT the datum - it's home is not at 0,0. It's at -30something, 0. That makes 0 sense. The FIRST tool is the one you offset all the other tools from. In other words, the only sensible configuration is the one you've labeled "mirrored". There is nothing "mirrored" about it. It should be the default. For the non-mirrored configuration to make sense, you would have to swap the pin assignments so that the LEFT extruder is the first tool (Extruder 1). Then it'd make sense to have that one home to 0,0, with the RIGHT extruder (now Extruder 2) being offset from it at -xsomething. Not sure if this made it any clearer.