#DDEX (dual extruder single printhead) configuration help.

101 messages · Page 1 of 1 (latest)

native trout
#

long story short: just set up rat os. I am just trying to add an [extruder1] to the config. pi + btt octopus v1.1

originally I tried to overwrite the regular [extruder] with [extruder0] but kept running into a new error after every save and reboot because I kept finding new places within ratos that [extruder] was split up between.

[extruder] seems to be set up fine with all of the default config files for the hardware - however the rapido file specifies the wrong sensor type. I tried to overwrite the correct sensor type but klipper fails to boot because of the temperature range being too high. the temperature is reading correctly - (it is supposed to be a PT1000 but it is set to 104GT)

similarly my new overwrite that adds [extruder1] is showing a room temp nozzle at over 150C despite the sensor type being correctly applied (ex1 uses a 104NT, not a PT1000).

I don't know why the hotened with the wrong sensor is the right temp but the hotend with the right sensor config is showing such a wrong temperature. beyond that I know I'll probably have some more questions later on.

#

I absolutely did not have the wires crossed.

#

that would be too easy for me to gloss over, obviously it could not be that.

lyric spoke
#

printer.cfg please

native trout
#

I'm pretty sure I got it figured out, but doesn't hurt to have a second set of eyes

#

I would actually like to change [extruder] to [extruder0] someday. ratos just splits up the definition on so many pages I gave up trying to track it all down and left it as [extruder]

lyric spoke
#

You have a bunch of stuff in there you don't need

lyric spoke
#

you should only need this in your user overrides section

[extruder]
nozzle_diameter: 0.6
sensor_type: PT1000
pressure_advance: 0.03

[extruder1]
step_pin: PG4
dir_pin: !PC1
enable_pin: !PA0
microsteps: 64
rotation_distance: 5.57
full_steps_per_rotation: 200
filament_diameter: 1.750
max_extrude_only_velocity: 120
max_extrude_only_accel: 800
pressure_advance_smooth_time: 0.02
max_extrude_only_distance: 200
nozzle_diameter: 0.6
heater_pin: PA3
sensor_type: ATC Semitec 104NT-4-R025H42G
sensor_pin: PF5
min_extrude_temp: 170
min_temp: 0
max_temp: 285
pressure_advance: 0.03
control: pid
pid_kp: 28.413
pid_ki: 1.334
pid_kd: 151.300

[stepper_x]
position_max: 330

native trout
#

I know, I just copied the whole sections because I wasn't sure what else I might need to change later. Just convenience now with some clean up later.

I also would rather define the pins for the second extruder the same way the first extruder is defined, just for consistency.

native trout
#

HMM

#

I wonder if I need to adjust the bed probe macro due to the limited X

native trout
#

oh hey, got the 4028's working.

#

definitely stealing a lot of the idex config

#

hmm

#

Endstop x still triggered after retract

native trout
#

it moves

#

everything is lining up now

#

might not need as much ratos help as I thought

#

only hurdle now is that I can home all axes but fail to z-tilt the back z motor

native trout
#

alright, yep, I am not finding a resolution for this

#

although I'm not sure if this is still a ratos thing or just a fix my printer thing

#

homing all axes works fine, fail the back Z probe during z tilt by getting "no trigger after full movement" and trying to mesh I end up either getting the same "no trigger" error or I start rubbing the pinda across the bed and getting "triggered before position" errors.

#

searched through older threads but there was either never a fix stated or the fix was something to do with the user's own modifications

native trout
#

okay

#

changing position min to -10 got me through a tilt

#

I def need to change the tilt and mesh macros though, as my max X movement is limited

#

it also took 4 tries, so I'm not looking forward to troubleshooting frame skew and tensioning lmao

native trout
#

okay, and now I should have tilt and mesh sorted.

I... am curious how much this actually affects the system's ability to run tilt correctly since the probe isn't exactly over the contact point

native trout
#

somehow I managed to get the 4028's working no problem but something is up with the hotend fan. went all the way to 280 before realizing they weren't kicking on.

#

tested to see if I switched the pins but nope

#

they are def plugged into pd12 and pd13

steel spruce
native trout
#

that was it, I see toolhead cooling fans turn on and off around 50c on the webUI, however physically the fans are still not spinning.

steel spruce
native trout
#

hey would you look at that

#

polarity is a thing that matters.

native trout
#

would the best way of setting up the offsets for the second extruder be within slicer or klipper?

#

I could set a gcode offset for the second nozzle and just run it like that

native trout
#

I don't know if this is a ratos/klipper thing or my slicer but both extruders are spinning/retracting at the same time despite nothing I'm seeing in the slicer telling it to

#

yeah, I'm not seeing any E1's in the gcode, only E0

steel spruce
native trout
#

Wow, did not know the octopus had that but sure enough...

They have separate pins and step sticks, is there any way to turn it off? The only board I've used with parallel has one driver to two ports

native trout
#

Oh my God how have I been staring at this thing for OVER A YEAR only just now realizing there are 9 ports and 8 stepsticks

steel spruce
#

All boards pretty much have those, i don't get it either lol

novel gate
#

i would also check the leadscrew couplers

native trout
#

Oh

#

That was fixed in a fix my mesh thread

#

Realized that I never changed the rotation distance in the config as I'm using tr8*2 screws

#

I'm still scared to put the second nozzle in

#

Getting those two extruders level with each other seems like it will be difficult

#

I've been modifying the new toolhead to have an adjuster plate but that will be some time to finish

novel gate
#

do not rush

native trout
#

I've got my two sany denki's configured as part cooling fans and they work fine from the mainsial interface but I'm having toruble getting them to actually kick on during a print when they are supposed to

native trout
#

finally getting around to adding a webcam too... crowsnest log says it sees the cam and has started but 'm not seeing any webcam panels on the dashboard nor any options in the settings.

native trout
#

weird, finally showed up in settings after chanigng the config and srestarting again. was able to 'add webcam' from there and reconfigure the same settings.

native trout
#

yep, there it is. a big m106 replacement macro

native trout
#

Tried just using the idex git's 106 macro after removing the idex macro parameters and realized that wouldn't work when I started to think how klipper is supposed to figure out which of the two fans to control at any one period.

Now I'm kinda stuck between either continuing to reverse engineer the idex macros to apply to DDEX or get just the fans configs to work or just develop a new one from scratch.

native trout
#
pin: !fan_part_cooling_pin
cycle_time: 0.01
enable_pin: PB10

[fan_generic part_fan1]
pin: !fan1_part_cooling_pin
cycle_time: 0.01
enable_pin: PB11

[gcode_macro M106]
variable_swap_speed: -1
gcode:
    # parameters
    {% set s = [[params.S|default(255)|int, 255]|min, 0]|max %}
    {% set p = params.P|default(-1)|int %}
    {% set speed = s / 255 %}

    # Set speed to -1 by default
    SET_GCODE_VARIABLE MACRO=M106 VARIABLE=swap_speed VALUE=-1

    # Set speed
    {% if params.P is defined %}
      {% if params.S is defined %}
      SET_FAN_SPEED FAN=part_fan{params.P|int} SPEED={speed}
      {% else %}
      SET_FAN_SPEED FAN=part_fan{params.P|int} SPEED={speed}
      {% endif %}
    {% else %}
      {% if params.S is defined %}
        SET_FAN_SPEED FAN=part_fan0 SPEED={speed}
      {% else %}
        SET_FAN_SPEED FAN=part_fan0 SPEED=0        
      {% endif %}
    {% endif %}

[gcode_macro M107]
rename_existing: M107.1
gcode:
    {% set p = params.P|default(-1)|int %}
    M106 S0 P{p}```
#

this is dumb

#

and does not work

#

wait

#

no

#

this... does work

#

but I've definitely got the math wrong converting 255 to 1

#

wait

#

I just did an S127 command and got 50% speed

#

so no, the math is right

#

this works I guess.

#

huh...

#

okay

#

it does work

#

part fan0 kicked on during the priming blob

#

but right after the priming blob I get an error:
The value 'part_fan-1' is not valid for FAN

and the print is canceled. I know I didn't touch the start or priming macros

#

okay, I can't recreate if I m106 without a P set, a P0, or a P1

#

but I can trigger it with an M107

#

oh, I see

#

I'm not even calling p in the m106, but I am in m107. I don't think I need to convert P-1 into p at all.

novel gate
#

this channel i so funny, its like i can listen to your thoughts kekw

native trout
#

sometimes I think I need help, but I think I'm finding out I just need more time lol

#

now I'm fighting the slicer sending S244 to my sanyo denki and blasting a PLA test print with too much air lmao

#

also I totally get now wanting to mess with an existing gcode command but god i wish klipper supported multiple part cooling fans easier

novel gate
#

technically you could use 95% of the complete idex code

#

its not so different from your setup

native trout
#

I really did think about it, but modifying this one macro seemed easier than trying to do the all of the idex macros

#

I do eventually want parity

#

also I'm dumb and using a 400 bed in a 400 frame so I can't do wipers/cameras

novel gate
#

camera doesnt need to be isntalled permanently

native trout
#

that is an idea, I also thought about just lining the edge of the print bed with one long wiper "bump", a few other things came to mind...

but ultimately I want to be able to raise/lower the nozzles, and that requires a whole printhead redesign, which allows me to do other things like cutters and wipers mounted on the head. so this is where I'm spending most of my time.

novel gate
#

definitly an interestng project

#

did you considered a rotating toolhead?

#

where only one nozzle points to he bed while the other is slightly offsetted

native trout
#

oh, I did see a project like that online somewhere

novel gate
#

yes, there are some people who already did that, i mean it adds extra complexity to the system, but could work if well executed