[Sammelthread] Die HWLuxx 3D Druckerkolonne....

@toscdesign ist kein Hexenwerk ;)
Und schau am besten immer in das klippy.log. Da hättest du vermutlich sofort gesehen was Sache ist. Bzw. zumindest einen guten Anhaltspunkt gehabt.

@Luke3120 der Reboot nach dem SPI anschalten ist notwendig und steht in der Tat nicht in der Doku. Aber im Zweifelsfall gilt immer: Have you tried turning it off and on again ;)

Edit:
Ich gehe noch kurz auf das Thema MCU etwas ausführlicher ein. Gerade dieser Aufbau ist die Stärke von Klipper. Du hast nur einen minimalen Firmware Part auf den Microcontrollern liegen, alle "Intelligenz" liegt auf dem Pi. Das spart das ständige flashen wie man es von Marlin kennt und entlastet die Controller auf den Mainboards. Durch diesen Aufbau kannst du mehrere Boards mit einer Klipperinstanz verwenden. Ich habe an meinem Voron mein Fysetc Spider Mainboard, ein Expander Board für die Lüfter, den Pi und den Carrot Feeder jeweils als eigene MCU konfiguriert. Aktuell spiele ich mit dem Gedanken ein altes, ausgemustertes Board rein für Temperaturfühler als MCU anzubinden. Am Carrot Feeder Board sind zwei Motoren und ein Servo samt Endstops angeschlossen.
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
vor dem 'make menuconfig' kann es teilweise helfen ein 'make clean' zu machen. steht nicht in der anleitung, aber ohne das wollte es bei mir nicht...
Das "make clean" ist bei Linux eigentlich Strandard. Damit werden alte Kompilate gelöscht und das System für einen neuen Build vorbereitet.
 
Ja, sollte man meinen. Klipper machts aber (afaik) nicht standardmäßig, was beim Flashen von verschiedenen MCU hintereinander zu Problemen führen kann.
 
Wollte eben auf den LGX Extruder umbauen. Dabei sind mir meine beiden Sensoren kaputt gegangen...die dünnen Beinchen an den Dingern sind einfach nicht für mich gemacht. Jetzt liegt das alles natürlich erstmal eine Woche rum. Schöner Mist :(
 
Welche Sensoren?
Temperatur Sensoren?
Beitrag automatisch zusammengeführt:

Anbei die Logfile:
Code:
===== Config file =====
[virtual_sdcard]
path = /home/pi/gcode_files

[pause_resume]

[display_status]

[gcode_macro CANCEL_PRINT]
description = Cancel the actual running print
rename_existing = CANCEL_PRINT_BASE
variable_park = True
gcode =
    {% if printer.pause_resume.is_paused|lower == 'false' and park|lower == 'true'%}
    _TOOLHEAD_PARK_PAUSE_CANCEL
    {% endif %}
    TURN_OFF_HEATERS
    CANCEL_PRINT_BASE

[gcode_macro PAUSE]
description = Pause the actual running print
rename_existing = PAUSE_BASE
gcode =
    PAUSE_BASE
    _TOOLHEAD_PARK_PAUSE_CANCEL

[gcode_macro RESUME]
description = Resume the actual running print
rename_existing = RESUME_BASE
gcode =
    {% set extrude = printer['gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL'].extrude %}
    {% if 'VELOCITY' in params|upper %}
    {% set get_params = ('VELOCITY=' + params.VELOCITY)  %}
    {%else %}
    {% set get_params = "" %}
    {% endif %}
    {% if printer.extruder.can_extrude|lower == 'true' %}
    M83
    G1 E{extrude} F2100
    {% if printer.gcode_move.absolute_extrude |lower == 'true' %} M82 {% endif %}
    {% else %}
    {action_respond_info("Extruder not hot enough")}
    {% endif %}
    RESUME_BASE {get_params}

[gcode_macro _TOOLHEAD_PARK_PAUSE_CANCEL]
description = Helper: park toolhead used in PAUSE and CANCEL_PRINT
variable_extrude = 1.0
gcode =
    {% set x_park = printer.toolhead.axis_maximum.x|float - 5.0 %}
    {% set y_park = printer.toolhead.axis_maximum.y|float - 5.0 %}
    {% set z_park_delta = 2.0 %}
    {% set max_z = printer.toolhead.axis_maximum.z|float %}
    {% set act_z = printer.toolhead.position.z|float %}
    {% if act_z < (max_z - z_park_delta) %}
    {% set z_safe = z_park_delta %}
    {% else %}
    {% set z_safe = max_z - act_z %}
    {% endif %}
    {% if printer.extruder.can_extrude|lower == 'true' %}
    M83
    G1 E-{extrude} F2100
    {% if printer.gcode_move.absolute_extrude |lower == 'true' %} M82 {% endif %}
    {% else %}
    {action_respond_info("Extruder not hot enough")}
    {% endif %}
    {% if "xyz" in printer.toolhead.homed_axes %}
    G91
    G1 Z{z_safe} F900
    G90
    G1 X{x_park} Y{y_park} F6000
    {% if printer.gcode_move.absolute_coordinates|lower == 'false' %} G91 {% endif %}
    {% else %}
    {action_respond_info("Printer not homed")}
    {% endif %}

[menu __main __octoprint]
type = disabled

[stepper_x]
step_pin = PF13
dir_pin = !PF12
enable_pin = !PF14
microsteps = 16
rotation_distance = 40
endstop_pin = PG6
position_endstop = -8
position_min = -8
position_max = 235
homing_speed = 40

[tmc2208 stepper_x]
uart_pin = PC4
run_current = 0.850
stealthchop_threshold = 999999
interpolate = True

[stepper_y]
step_pin = PG0
dir_pin = !PG1
enable_pin = !PF15
microsteps = 16
rotation_distance = 40
endstop_pin = PG9
position_endstop = -10
position_min = -10
position_max = 220
homing_speed = 40

[tmc2208 stepper_y]
uart_pin = PD11
run_current = 0.850
stealthchop_threshold = 999999
interpolate = True

[stepper_z]
step_pin = PF11
dir_pin = PG3
enable_pin = !PG5
microsteps = 16
rotation_distance = 8
endstop_pin = PG10
position_endstop = 0
position_max = 250

[tmc2208 stepper_z]
uart_pin = PC6
run_current = 0.850
stealthchop_threshold = 999999
interpolate = True

[extruder]
step_pin = PF9
dir_pin = !PF10
enable_pin = !PG2
microsteps = 16
rotation_distance = 7.711
nozzle_diameter = 0.400
filament_diameter = 1.750
heater_pin = PA2
sensor_pin = PF4
sensor_type = EPCOS 100K B57560G104F
control = pid
pid_kp = 19.518
pid_ki = 0.964
pid_kd = 98.812
min_temp = 0
max_temp = 240

[tmc2208 extruder]
uart_pin = PF2
run_current = 0.650
stealthchop_threshold = 0
interpolate = True

[heater_bed]
heater_pin = PA1
sensor_pin = PF3
sensor_type = ATC Semitec 104GT-2
control = pid
pid_kp = 71.321
pid_ki = 1.640
pid_kd = 775.620
min_temp = 0
max_temp = 100

[fan]
pin = PA8

[heater_fan fan1]
pin = PE5

[mcu]
serial = /dev/serial/by-id/usb-Klipper_stm32f446xx_5D002F001251373234333632-if00

[printer]
kinematics = cartesian
max_velocity = 300
max_accel = 1000
max_z_velocity = 5
max_z_accel = 100
square_corner_velocity = 5.0

[board_pins]
aliases =
    EXP1_1=PE8, EXP1_2=PE7,
    EXP1_3=PE9, EXP1_4=PE10,
    EXP1_5=PE12, EXP1_6=PE13,
    EXP1_7=PE14, EXP1_8=PE15,
    EXP1_9=<GND>, EXP1_10=<5V>,
    EXP2_1=PA6, EXP2_2=PA5,
    EXP2_3=PB1, EXP2_4=PA4,
    EXP2_5=PB2, EXP2_6=PA7,
    EXP2_7=PC15, EXP2_8=<RST>,
    EXP2_9=<GND>, EXP2_10=PC5

[display]
lcd_type = st7920
cs_pin = EXP1_7
sclk_pin = EXP1_6
sid_pin = EXP1_8
encoder_pins = ^EXP1_5, ^EXP1_3
click_pin = ^!EXP1_2

[output_pin beeper]
pin = EXP1_1

[bltouch]
sensor_pin = ^PB7
control_pin = PB6
x_offset = -37.800
y_offset = -13.200
z_offset = 2.638
pin_move_time = 1

[safe_z_home]
home_xy_position = 50, 25
speed = 50
z_hop = 10
z_hop_speed = 5

[bed_mesh]
speed = 50
horizontal_move_z = 7
mesh_min = 0, 0
mesh_max = 197, 206
probe_count = 5, 5
mesh_pps = 2, 2
algorithm = bicubic
bicubic_tension = 0.2
fade_start = 5
fade_end = 10
fade_target = 0

[bed_screws]
screw1 = 7, 7
screw2 = 7, 207
screw3 = 212, 207
screw4 = 212, 7

[mcu rpi]
serial = /tmp/klipper_host_mcu

[adxl345]
cs_pin = rpi:None

[resonance_tester]
accel_chip = adxl345
probe_points =
    100, 100, 20
=======================
Args: ['/home/pi/klipper/klippy/klippy.py', '/home/pi/klipper_config/printer.cfg', '-l', '/home/pi/klipper_logs/klippy.log', '-a', '/tmp/klippy_uds']
Git version: 'v0.10.0-377-ga02da851'
CPU: 4 core ARMv7 Processor rev 4 (v7l)
Python: '2.7.16 (default, Oct 10 2019, 22:02:15) \n[GCC 8.3.0]'
webhooks client 1967090384: {'program': 'Moonraker', 'version': 'v0.7.1-561-g94a11ff'}
=============== Log rollover at Tue May 10 15:57:08 2022 ===============
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
MCU error during connect
Traceback (most recent call last):
  File "/home/pi/klipper/klippy/klippy.py", line 158, in _connect
    self.send_event("klippy:mcu_identify")
  File "/home/pi/klipper/klippy/klippy.py", line 248, in send_event
    return [cb(*params) for cb in self.event_handlers.get(event, [])]
  File "/home/pi/klipper/klippy/mcu.py", line 779, in _mcu_identify
    raise error(str(e))
error: mcu 'rpi': Unable to connect
Build file /home/pi/klipper/klippy/../.config(2491): Fri Apr 22 16:41:08 2022
========= Last MCU build config =========
CONFIG_LOW_LEVEL_OPTIONS=y
# CONFIG_MACH_AVR is not set
# CONFIG_MACH_ATSAM is not set
# CONFIG_MACH_ATSAMD is not set
# CONFIG_MACH_LPC176X is not set
CONFIG_MACH_STM32=y
# CONFIG_MACH_RP2040 is not set
# CONFIG_MACH_PRU is not set
# CONFIG_MACH_LINUX is not set
# CONFIG_MACH_SIMU is not set
CONFIG_BOARD_DIRECTORY="stm32"
CONFIG_MCU="stm32f446xx"
CONFIG_CLOCK_FREQ=180000000
CONFIG_USBSERIAL=y
CONFIG_FLASH_START=0x8008000
CONFIG_FLASH_SIZE=0x80000
CONFIG_RAM_START=0x20000000
CONFIG_RAM_SIZE=0x20000
CONFIG_STACK_SIZE=512
CONFIG_STM32_SELECT=y
# CONFIG_MACH_STM32F103 is not set
# CONFIG_MACH_STM32F207 is not set
# CONFIG_MACH_STM32F401 is not set
# CONFIG_MACH_STM32F405 is not set
# CONFIG_MACH_STM32F407 is not set
# CONFIG_MACH_STM32F429 is not set
CONFIG_MACH_STM32F446=y
# CONFIG_MACH_STM32F031 is not set
# CONFIG_MACH_STM32F042 is not set
# CONFIG_MACH_STM32F070 is not set
# CONFIG_MACH_STM32F072 is not set
# CONFIG_MACH_STM32G0B1 is not set
# CONFIG_MACH_STM32H743 is not set
# CONFIG_MACH_STM32H750 is not set
CONFIG_MACH_STM32F4=y
CONFIG_HAVE_STM32_USBOTG=y
CONFIG_HAVE_STM32_CANBUS=y
CONFIG_STM32_FLASH_START_8000=y
# CONFIG_STM32_FLASH_START_10000 is not set
# CONFIG_STM32_FLASH_START_0000 is not set
# CONFIG_STM32_CLOCK_REF_8M is not set
CONFIG_STM32_CLOCK_REF_12M=y
# CONFIG_STM32_CLOCK_REF_16M is not set
# CONFIG_STM32_CLOCK_REF_25M is not set
# CONFIG_STM32_CLOCK_REF_INTERNAL is not set
CONFIG_CLOCK_REF_FREQ=12000000
CONFIG_STM32F0_TRIM=16
CONFIG_STM32_USB_PA11_PA12=y
# CONFIG_STM32_SERIAL_USART1 is not set
# CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set
# CONFIG_STM32_SERIAL_USART2 is not set
# CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set
# CONFIG_STM32_SERIAL_USART3 is not set
# CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set
# CONFIG_STM32_CANBUS_PA11_PA12 is not set
# CONFIG_STM32_CANBUS_PB8_PB9 is not set
# CONFIG_STM32_CANBUS_PI9_PH13 is not set
# CONFIG_STM32_CANBUS_PB5_PB6 is not set
# CONFIG_STM32_CANBUS_PB12_PB13 is not set
# CONFIG_STM32_CANBUS_PD0_PD1 is not set
CONFIG_CANBUS_FREQUENCY=500000
CONFIG_USB_VENDOR_ID=0x1d50
CONFIG_USB_DEVICE_ID=0x614e
CONFIG_USB_SERIAL_NUMBER_CHIPID=y
CONFIG_USB_SERIAL_NUMBER="12345"

#
# USB ids
#
# end of USB ids

CONFIG_INITIAL_PINS=""
CONFIG_HAVE_GPIO=y
CONFIG_HAVE_GPIO_ADC=y
CONFIG_HAVE_GPIO_SPI=y
CONFIG_HAVE_GPIO_I2C=y
CONFIG_HAVE_GPIO_HARD_PWM=y
CONFIG_HAVE_GPIO_BITBANGING=y
CONFIG_HAVE_STRICT_TIMING=y
CONFIG_HAVE_CHIPID=y
CONFIG_HAVE_STEPPER_BOTH_EDGE=y
CONFIG_INLINE_STEPPER_HACK=y
=======================
Build file /home/pi/klipper/klippy/../out/klipper.dict(7407): Fri Apr 22 16:41:45 2022
Last MCU build version: v0.10.0-377-ga02da851
Last MCU build tools: gcc: (15:7-2018-q2-6) 7.3.1 20180622 (release) [ARM/embedded-7-branch revision 261907] binutils: (2.31.1-11+rpi1+11) 2.31.1
Last MCU build config: BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi3a=PC11,PC12,PC10 BUS_PINS_spi2a=PC2,PC3,PB10 BUS_PINS_i2c1a=PB8,PB9 RESERVE_PINS_crystal=PH0,PH1 STEPPER_BOTH_EDGE=1 ADC_MAX=4095 BUS_PINS_spi4=PE13,PE14,PE12 BUS_PINS_spi3=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi1=PA6,PA7,PA5 RESERVE_PINS_USB=PA11,PA12 PWM_MAX=255 MCU=stm32f446xx STATS_SUMSQ_BASE=256 BUS_PINS_spi1a=PB4,PB5,PB3 CLOCK_FREQ=180000000
Build file /home/pi/klipper/klippy/../out/klipper.elf(292208): Fri Apr 22 16:41:55 2022
Beitrag automatisch zusammengeführt:

@Luke3120
Das Video ist klasse (y)

Hat auf Anhieb bei mir funktioniert 💪
 
Zuletzt bearbeitet:
@toscdesign Hall Effekt für den Toolhead Sensor des Rabbits :) Temp Sensoren habe ich auf Lager.
Und das Logfile sagt ja "no such file or directory" was auch Sinn ergibt wenn du die nötigen Schritte für die MCU Installation nicht durchgeführt hast. Daher Klipper auf dem Pi wie in den Links beschrieben als MCU installieren, dann klappt das auch :)
 
@RcTomcat
Klappt ja auch, mach gerade die Messungen 8-)


X-Achse:
shaper_calibrate_x.png


Y-Achse:
shaper_calibrate_y.png
 
Zuletzt bearbeitet:
Uff,
der Pancake Stepper wird ganz schön heiß :oops:

Kann es sein, das die Angabe des Hersteller, ein wenig zu hoch ist?
1A und ich betreibe den mit 0,65A
 
Also der Pancake (LDO) beim Orbiter soll mit max. 0,35A laufen.

Meine beiden Downloads ziehen sich wie Kaugummi. Magieia Linux. 4,1 & 4,2GB. Dauer jeweils mindestens 2h. Ich liebe 16MBaud DSL Leitungen. Da sieht man dem Rechner beim Sex zu...
 
Oha,
dann ist mein Strom jedenfall viel zu hoch. (54°C Temp.)
Und die Angaben des Herstellers sind total daneben :rofl:
 
54°C ist für die Motoren kein Problem, wenn ich mich richtig erinnere halten die locker 100°C ab. Und der Hersteller gibt den Strom meistens als Peak an, in der Firmware wird das aber (zumindest bei Marlin) als RMS eingestellt. Umrechnungsfaktor 1.414 macht aus deinen eingestellten 650mA 919,9mA im Peak. Üblich sind 80% bis 90% von der Herstellerangabe, du bist da nur leicht drüber. Ich würde denke ich auf 600mA stellen und dann beobachten, ob er steps verliert.
 
Klipper nutzt auch RMS Werte
 
Ist alles eine Frage des Motors.
Mein einer soll laut Hersteller 0.3A abkönnen. Betrieben habe ich ihn (mangels der Angaben) bisher mit 0.7. Und da wurde er dann wirklich heiß und hatte trotzdem Probleme Filament zu bewegen...Scheiß Ding.
Daher nun der Umbau auf LGX Extruder samt Bondtech Motor. Da ist wenigstens bekannt was man bekommt.
 
Für nen Euro mehr hätteste dir auch den von Stepperonline holen können.
 
Nach LDO eig die zweite Wahl was Steppermotoren angeht m.E.
Stepperonline kommt aus USA, aber ja lässt in China fertigen zum Teil.
 
Der von euch vorgeschlagene Stepper ist auch aus China, wird also der gleiche sein 🤔
 
Für nen Euro mehr hätteste dir auch den von Stepperonline holen können.
Wieso einen Euro mehr? Eher einen günstiger.

 
Da kommt dann aber noch Versand dazu, außerdem automatisch aus Deutschland +2,xx$
 
Das hättest du aber Mal früher sagen können, jetzt hab ich schon einen 🤣
 
Ich habe eben mal meine Clicky Probe zusammengebaut. Muss ja auf die Hall Effekt Sensoren warten, warum also nicht gleich den ganzen Drucker nochmal neu verkabeln XD

edit:
Und irgendwie finde ich die Idee eines abnehmbaren Sensors extrem cool :))
 
Oh, gut das du das schreibst!
Ich müsste Mal das Modell meines BLtouch Halters hochladen.
 
Die Clicky Probe ist eine via Magnete befestigte Probe. Diese wird vom Drucker selbstständig aufgenommen, das Bett vermessen und dann wieder abgelegt. Extrem einfach aufgebaut, effektiv braucht man nur einen micro-Schalter und ein paar Magnete.
Sieht m.M.n einfach sehr cool aus wenn der Drucker die Probe aufnimmt und wieder absetzt. Hat so ein wenig was von einer CNC beim Werkzeugwechsel :)

Auf deinen BLTouch Halter bin ich mal gespannt
 
Ich hab den Strom des Pancake Steppers Mal auf 500mA gesenkt.

Wird zwar immer noch heiß, kann man aber zumindest jetzt anfassen 😆

Schritte verliert der auch keine 👍
 
Eryone hat nun auch ASA und ABS im Portfolio :) Hab mal bestellt XD

Edit: Carbon Fibre gibt es nun auch
 
Hattet ihr das schon, das der BLtouch mitten in der Messung mit "Failed to deploy" abbricht?
Klipper
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh