Working klipper config, conflicting ownership of between klipper and octoprint containers..

This commit is contained in:
default 2021-01-21 13:57:28 +00:00
parent d421b6a4e0
commit 902107221e
11 changed files with 896 additions and 59 deletions

View File

@ -8,7 +8,6 @@ volumes:
#klipper_vol: {}
services:
# Octoprint itself
octoprint:
build:
context: octoprint
@ -19,9 +18,11 @@ services:
restart: always
environment:
WITH_KLIPPER: "yes"
KLIPPER_HOME: "/octo_printer"
#WITH_SAFEMODE: "yes"
OCTO_PRINTER: "/tmp"
PRINTER_CFG: "klipper-geeetech-a10-bltouch.cfg"
#PRINTER_CFG: "klipper-geeetech-a10-bltouch_arduino.cfg_E2"
SOCAT_TYPE: "TCP"
SOCAT_HOST: "klipper"
SOCAT_PORT: "9999"
@ -29,8 +30,10 @@ services:
volumes:
- octoprint_vol:/opt/octoprint/data
- octoklipper_vol:/octo_printer
- /home/default/octoprint-containers/octoprint/printerProfiles:/opt/octoprint/data/octoprint/printerProfiles
- /home/default/octoprint-containers/octoprint/bin:/opt/octoprint/bin
- /mnt/space/code_repositories/docker/octoprint-containers/octoprint/printerProfiles:/opt/octoprint/data/octoprint/printerProfiles
- /mnt/space/code_repositories/docker/octoprint-containers/octoprint/bin:/opt/octoprint/bin
#- /home/default/octoprint-containers/octoprint/printerProfiles:/opt/octoprint/data/octoprint/printerProfiles
#- /home/default/octoprint-containers/octoprint/bin:/opt/octoprint/bin
# - tmp:/tmp
# Uncomment next line for "Plain Docker" setup
# - /run/dbus:/host/run/dbus
@ -86,6 +89,7 @@ services:
PYTHONDIR: "/home/klippy/klippy-env"
SRCDIR: "/home/klippy/klipper"
PRINTER_CFG: "klipper-geeetech-a10-bltouch.cfg"
#PRINTER_CFG: "klipper-geeetech-a10-bltouch_arduino.cfg_E2"
#PRINTER_CFG: "generic-bigtreetech-skr-v1.3.cfg"
OCTO_PRINTER: "/tmp"
#OCTO_PRINTER: "/octo_printer"
@ -93,7 +97,8 @@ services:
volumes:
#- klipper_vol:/${HOME}/.config
#- ./klipper/klipper_cfg:/home/klippy/.config/klipper
- /home/default/octoprint-containers/klipper/klipper_cfg:/home/klippy/.config/klipper
#- /home/default/octoprint-containers/klipper/klipper_cfg:/home/klippy/.config/klipper
- /mnt/space/code_repositories/docker/octoprint-containers/klipper/klipper_cfg:/home/klippy/.config/klipper
#- ./klipper_cfg:/home/klippy/.config/klipper
- octoklipper_vol:/octo_printer
#- octoprint_vol:/home/klippy/.config/klipper

81
gcode-offsets.txt Normal file
View File

@ -0,0 +1,81 @@
# Move the printhead to the center of the bed and issue:
Send: GET_POSITION
Recv: // mcu: stepper_x:12150 stepper_y:9400 stepper_z:-25180
Recv: // stepper: stepper_x:160.995200 stepper_y:116.000900 stepper_z:10.000000
Recv: // kinematic: X:160.995200 Y:116.000900 Z:10.000000
Recv: // toolhead: X:160.995200 Y:116.000900 Z:10.000000 E:0.000000
Recv: // gcode: X:160.995200 Y:116.000900 Z:10.000000 E:0.000000
Recv: // gcode base: X:0.000000 Y:0.000000 Z:0.000000 E:0.000000
Recv: // gcode homing: X:0.000000 Y:0.000000 Z:0.000000
Probe position:
Recv: // toolhead: X:160.995200 Y:116.000900 Z:10.000000 E:0.000000
X position of 160.995 and probe Y position of 116.
Send: GET_POSITION
Recv: // mcu: stepper_x:9250 stepper_y:9560 stepper_z:-24885
Recv: // stepper: stepper_x:124.890200 stepper_y:117.992900 stepper_z:10.000000
Recv: // kinematic: X:124.890200 Y:117.992900 Z:10.000000
Recv: // toolhead: X:124.890200 Y:117.992900 Z:10.000000 E:0.000000
Recv: // gcode: X:124.890200 Y:117.992900 Z:10.000000 E:0.000000
Recv: // gcode base: X:0.000000 Y:0.000000 Z:0.000000 E:0.000000
Recv: // gcode homing: X:0.000000 Y:0.000000 Z:0.000000
nozzle position:
Recv: // toolhead: X:124.890200 Y:117.992900 Z:10.000000 E:0.000000
X position of 124.8902 and probe Y position of 117.9929
The x_offset is then the
nozzle_x_position - probe_x_position
124.8902 - 160.995 = -36.1048
and y_offset is similarly the
nozzle_y_position - probe_y_position.
117.9929 - 116.0009 = 1.992
Update the printer.cfg file with the given values, remove the tape/marks from the bed, and then issue a RESTART command so that the new values take effect.
Before Z offset
Send: get_position
Recv: // mcu: stepper_x:9017 stepper_y:5841 stepper_z:-25192
Recv: // stepper: stepper_x:122.001800 stepper_y:110.000000 stepper_z:10.000000
Recv: // kinematic: X:122.001800 Y:110.000000 Z:10.000000
Recv: // toolhead: X:122.000000 Y:110.000000 Z:10.000000 E:0.000000
Recv: // gcode: X:122.000000 Y:110.000000 Z:10.000000 E:0.000000
Recv: // gcode base: X:0.000000 Y:0.000000 Z:0.000000 E:0.000000
Recv: // gcode homing: X:0.000000 Y:0.000000 Z:0.000000
Recv: ok
Send: PROBE_CALIBRATE
Recv: // probe at 122.002,110.000 is z=1.422500
Recv: // probe at 122.002,110.000 is z=1.425000
Recv: // probe at 122.002,110.000 is z=1.330000
Recv: // Starting manual Z probe. Use TESTZ to adjust position.
Recv: // Finish with ACCEPT or ABORT command.
Recv: // Z position: ?????? --> 6.393 <-- ??????
Recv: ok
After PROBE_CALIBRATE
Send: get_position
Recv: // mcu: stepper_x:6117 stepper_y:6002 stepper_z:-26635
Recv: // stepper: stepper_x:85.896800 stepper_y:112.004450 stepper_z:6.392500
Recv: // kinematic: X:85.896800 Y:112.004450 Z:6.392500
Recv: // toolhead: X:85.901800 Y:112.000000 Z:6.392500 E:0.000000
Recv: // gcode: X:85.901800 Y:112.000000 Z:6.392500 E:0.000000
Recv: // gcode base: X:0.000000 Y:0.000000 Z:0.000000 E:0.000000
Recv: // gcode homing: X:0.000000 Y:0.000000 Z:0.000000
Recv: ok

View File

@ -2,8 +2,8 @@
ARG OP_MACHINE_NAME
#FROM balenalib/${OP_MACHINE_NAME:-%%RESIN_MACHINE_NAME%%}-debian:buster
FROM lpenz/devuan-beowulf-armhf-minbase
#FROM lpenz/devuan-beowulf-armhf-minbase
FROM dyne/devuan:beowulf
RUN echo "deb http://deb.devuan.org/merged/ beowulf main contrib non-free" > /etc/apt/sources.list
RUN apt-get update && \

View File

@ -1,5 +1,5 @@
FROM lpenz/devuan-beowulf-armhf-minbase
#FROM lpenz/devuan-beowulf-armhf-minbase
FROM dyne/devuan:beowulf
SHELL ["/bin/bash", "-c"]
RUN echo "deb http://deb.devuan.org/merged/ beowulf main contrib non-free" > /etc/apt/sources.list
@ -65,7 +65,7 @@ RUN useradd -ms /bin/bash klippy && adduser klippy dialout
# Create the shared volume mount point
RUN mkdir -p ${KLIPPER_HOME}
RUN chown -R klippy.klippy ${KLIPPER_HOME}
RUN chown -R klippy:klippy ${KLIPPER_HOME}
USER klippy

View File

@ -1,47 +1,60 @@
# For reference: https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#stepper
[stepper_x]
step_pin: ar37
dir_pin: !ar39
enable_pin: !ar35
step_pin: ar37 # Z-STEP PC0
dir_pin: !ar39 # Z-DIR PG2
enable_pin: !ar35 # Z-ENABLE PC2
step_distance: .01245
endstop_pin: ^!ar24
endstop_pin: ^!ar24 # Z-MAX PC7
position_endstop: 0
position_max: 235
homing_speed: 50.0
[stepper_y]
step_pin: ar31
dir_pin: !ar33
enable_pin: !ar29
step_pin: ar31 # Y-STEP PC6
dir_pin: !ar33 # Y-DIR PC4
enable_pin: !ar29 # Y-ENABLE PA7
step_distance: .01245
endstop_pin: ^!ar28
endstop_pin: ^!ar28 # Y-MAX PA6
position_endstop: 0
position_max: 235
homing_speed: 50.0
[stepper_z]
step_pin: ar25
dir_pin: ar23
enable_pin: !ar27
#
step_pin: ar25 # X-STEP PA3
dir_pin: ar23 # X-DIR PA1
enable_pin: !ar27 # X-ENABLE PA5
step_distance: .0025
#endstop_pin: ^!ar30
#endstop_pin: ^!ar30 # X-MAX PA2
position_endstop: 0
endstop_pin: probe:z_virtual_endstop
position_max: 250
position_min: -2
[safe_z_home]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#safe_z_home
home_xy_position: 110,110 # Change coordinates to the center of your print bed
speed: 50
z_hop: 10 # Move up 10mm
z_hop_speed: 5
[extruder]
step_pin: ar46
dir_pin: ar44
enable_pin: !ar12
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#extruder1
# https://github.com/KevinOConnor/klipper/blob/master/config/sample-multi-extruder.cfg
step_pin: ar46 # E0-STEP PL3
dir_pin: ar44 # E0-DIR PL5
enable_pin: !ar12 # E0-ENABLE PB6
step_distance: .002304147
nozzle_diameter: 0.400
filament_diameter: 1.750
max_extrude_only_distance: 100.0
#pressure_advance: 0.12
#pressure_advance_lookahead_time: 0.020
heater_pin: ar10
heater_pin: ar10 # HEATER-E0 PB4
sensor_type: EPCOS 100K B57560G104F
sensor_pin: analog11
sensor_pin: analog11 # NTC-E0 PB5
pullup_resistor: 4700
control: pid
pid_Kp: 29.667
@ -51,22 +64,22 @@ pid_Kd: 93.451
min_temp: 0
max_temp: 255
[extruder1]
step_pin: ar49
dir_pin: ar47
enable_pin: !ar48
step_distance: .002304147
nozzle_diameter: 0.400
filament_diameter: 1.750
max_extrude_only_distance: 100.0
#[extruder1]
#step_pin: ar49 # E1-STEP PL0
#dir_pin: ar47 # E1-DIR PL2
#enable_pin: !ar48 # E1-ENABLE PL1
#step_distance: .002304147
#nozzle_diameter: 0.400
#filament_diameter: 1.750
#max_extrude_only_distance: 100.0
#pressure_advance: 0.12
#pressure_advance_lookahead_time: 0.020
shared_heater: extruder
#shared_heater: extruder
#[extruder2]
#step_pin: ar43
#dir_pin: ar45
#enable_pin: !ar41
#step_pin: ar43 # E2-STEP PL6
#dir_pin: ar45 # E2-DIR PL4
#enable_pin: !ar41 # E2-ENABLE PG0
#step_distance: .002304147
#nozzle_diameter: 0.400
#filament_diameter: 1.750
@ -76,9 +89,10 @@ shared_heater: extruder
#shared_heater: extruder
[heater_bed]
heater_pin: ar4
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#heater_bed
heater_pin: ar4 # HEATER-BED PG5
sensor_type: EPCOS 100K B57560G104F
sensor_pin: analog10
sensor_pin: analog10 # NTC-HEATBED PK2
control: pid
pid_Kp: 73.964
pid_Ki: 2.315
@ -87,14 +101,17 @@ min_temp: 0
max_temp: 120
[fan]
pin: ar9
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#fan
pin: ar9 # FAN-E2 PH6
[mcu]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#mcu
#serial: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
serial: /dev/ttyUSB0
pin_map: arduino
[printer]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#printer
kinematics: cartesian
max_velocity: 300
max_accel: 3000
@ -108,6 +125,7 @@ square_corner_velocity: 1.0
[display]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#display
lcd_type: hd44780
# The type of LCD chip in use. This may be "hd44780" (which is used
# in "RepRapDiscount 2004 Smart Controller" type displays), "st7920"
@ -115,12 +133,12 @@ lcd_type: hd44780
# Controller" type displays), "uc1701" (which is used in "MKS Mini
# 12864" type displays), or "ssd1306". This parameter must be
# provided.
rs_pin: ar20
e_pin: ar17
d4_pin: ar16
d5_pin: ar21
d6_pin: ar5
d7_pin: ar36
rs_pin: ar20 # LCM-RS PD1
e_pin: ar17 # LCM-EN PH0
d4_pin: ar16 # LCM-D4 PH1
d5_pin: ar21 # LCM-D5 PD0
d6_pin: ar5 # LCM-D6 PE3
d7_pin: ar36 # LCM-D7 PC1
# The pins connected to an hd44780 type lcd. These parameters must
# be provided when using an hd44780 display.
#cs_pin:
@ -145,10 +163,10 @@ d7_pin: ar36
# Timeout for menu. Being inactive this amount of seconds will trigger
# menu exit or return to root menu when having autorun enabled.
# The default is 0 seconds (disabled)
encoder_pins: ^ar40, ^ar42
encoder_pins: ^ar40, ^ar42 # ENCODER-1 PG1, ENCODER-2 PL7
# The pins connected to encoder. 2 pins must be provided when
# using encoder. This parameter must be provided when using menu.
click_pin: ^!ar19
click_pin: ^!ar19 # ENCODER-BUTTON PD2
# The pin connected to 'enter' button or encoder 'click'. This parameter
# must be provided when using menu.
#back_pin:
@ -170,6 +188,8 @@ click_pin: ^!ar19
# BLTOUCH - Remove if you don't have it -----------------------------------------
#[homing_override]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#homing_override
#gcode:
# G91
# G1 Z20 F600
@ -182,18 +202,20 @@ click_pin: ^!ar19
#set_position_z: 5
[bltouch]
sensor_pin: ar30
control_pin: ar11
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#bltouch
sensor_pin: ar30 # Z-MIN PC7
control_pin: ar11 # Z-MIN-PROBE PB5
pin_move_time: 0.320
pin_up_reports_not_triggered: False
pin_up_touch_mode_reports_triggered: False
x_offset: -37
y_offset: 0
x_offset: -36.1
y_offset: 2.0
z_offset: 1.45
samples: 3
sample_retract_dist: 2.5
[bed_mesh]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#bed_mesh
speed: 50
horizontal_move_z: 6
mesh_min: 54,15
@ -201,6 +223,104 @@ mesh_max: 233,220
probe_count: 4,4
algorithm: lagrange
# FILAMENT RUNOUT SENSOR - Remove if you don't have it ---------------------------
# Filament Switch Sensor. Support for filament insert and runout detection
# using a switch sensor, such as an endstop switch.
[gcode_macro PAUSE_MACRO]
gcode:
PAUSE
PARK_MACRO
[filament_switch_sensor filament_sensor_left]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#filament_switch_sensor
pause_on_runout: True
runout_gcode: outoffilament
#insert_gcode:
event_delay: 3.0
switch_pin: ^!ar66 # FIL-DETECT [L] PK4
#[filament_switch_sensor filament_sensor_right]
## https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#filament_switch_sensor
#pause_on_runout: True
#runout_gcode: outoffilament
##insert_gcode:
#event_delay: 3.0
#switch_pin: ^!ar67 # FIL-DETECT [R] PK5
[idle_timeout]
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#idle_timeout
#gcode:
timeout: 1200
# GCode Macros
# https://github.com/KevinOConnor/klipper/blob/master/config/sample-macros.cfg
[gcode_macro outoffilament]
gcode:
PARK_MACRO
;UNLOAD_FILAMENT
M117 OUT OF FILAMENT..
[gcode_macro M900]
gcode: SET_PRESSURE_ADVANCE ADVANCE={K}
[gcode_macro PARK_MACRO]
default_parameter_X: 0
default_parameter_Y: 0
default_parameter_Z: 30
gcode:
M117 PARKING..
G91
G1 E-3.14 F1500
G1 Z{Z}
G90
G1 X{X} Y{Y} F3000
[gcode_macro M600]
gcode:
PAUSE_MACRO
UNLOAD
[gcode_macro PAUSE_MACRO]
gcode:
PAUSE
PARK_MACRO
[gcode_macro UNLOAD]
gcode:
G91
G1 E5.0 F1200
G1 E3.0 F1600
G1 E-13.14 F7000
G1 E-540 F3000
G90
[gcode_macro PURGE]
gcode:
M117 PURGING..
G91
G1 E45.0 F250
G90
[gcode_macro LOAD_FILAMENT]
gcode:
M117 LOADING...
G91
G1 E25.0 F1000
G1 E435 F2500
G4 P900
G1 E45.0 F250
G90
[gcode_macro RESUME_MACRO]
gcode:
M117 RESUMING...
RESUME
OCTO10
[gcode_macro G29]
gcode:
G28
@ -210,7 +330,7 @@ gcode:
# M300 : Play tone, Beeper support, as commonly found on usual LCD displays
# Usage: M300 [P<ms>] [S<Hz>] P is the tone duration, S the tone frequency.
#[output_pin BEEPER_pin]
#pin: ar18
#pin: ar18 # BEEPER PD3
#pwm: True
#value: 0
#shutdown_value: 0
@ -224,3 +344,15 @@ gcode:
# G4 P{P}
# SET_PIN PIN=BEEPER_pin VALUE=0
# Resonance measurement
# https://github.com/KevinOConnor/klipper/blob/master/docs/Measuring_Resonances.md
#[mcu rpi]
#serial: /tmp/klipper_host_mcu
#
#[adxl345]
#cs_pin: rpi:None
#
#[resonance_tester]
#accel_chip: adxl345
#probe_points:
# 100,100,20 # an example

View File

@ -0,0 +1,228 @@
[stepper_x]
step_pin: ar25 # X-STEP PA3
dir_pin: !ar23 # X-DIR PA1
enable_pin: !ar27 # X-ENABLE PA5
step_distance: .01245
endstop_pin: ^!ar24 # X-MAX PA2
position_endstop: 0
position_max: 235
homing_speed: 50.0
[stepper_y]
step_pin: ar31 # Y-STEP PC6
dir_pin: !ar33 # Y-DIR PC4
enable_pin: !ar29 # Y-ENABLE PA7
step_distance: .01245
endstop_pin: ^!ar28 # Y-MAX PA6
position_endstop: 0
position_max: 235
homing_speed: 50.0
[stepper_z]
step_pin: ar37 # Z-STEP PC0
dir_pin: ar39 # Z-DIR PG2
enable_pin: !ar35 # Z-ENABLE PC2
step_distance: .0025
#endstop_pin: ^!ar30 # Z-MAX
position_endstop: 0
endstop_pin: probe:z_virtual_endstop
position_max: 250
position_min: -2
[extruder]
step_pin: ar43 # E0-STEP PL6
dir_pin: ar45 # E0-DIR PL4
enable_pin: !ar41 # E0-ENABLE PG0
step_distance: .002304147
nozzle_diameter: 0.400
filament_diameter: 1.750
max_extrude_only_distance: 100.0
#pressure_advance: 0.12
#pressure_advance_lookahead_time: 0.020
heater_pin: ar2 # HEATER-E0 PE4
sensor_type: EPCOS 100K B57560G104F
sensor_pin: analog8 # NTC-E0 PK0
pullup_resistor: 4700
control: pid
pid_Kp: 29.667
pid_Ki: 2.355
pid_Kd: 93.451
#min_extrude_temp: 170
min_temp: 0
max_temp: 255
[extruder1]
step_pin: ar49 # E1-STEP PL0
dir_pin: ar47 # E1-DIR PL2
enable_pin: !ar48 # E1-ENABLE PL1
step_distance: .002304147
nozzle_diameter: 0.400
filament_diameter: 1.750
max_extrude_only_distance: 100.0
#pressure_advance: 0.12
#pressure_advance_lookahead_time: 0.020
shared_heater: extruder
#[extruder2]
#step_pin: ar46 # E2-STEP PL3
#dir_pin: ar44 # E2-DIR PL5
#enable_pin: !ar12 # E2-ENABLE PB6
#heater_pin: ar10 # HEATER-E2 PB4
#sensor_pin: analog11 # NTC_E2 PK3
#step_distance: .002304147
#nozzle_diameter: 0.400
#filament_diameter: 1.750
#max_extrude_only_distance: 100.0
##pressure_advance: 0.12
##pressure_advance_lookahead_time: 0.020
#shared_heater: extruder
[heater_bed]
heater_pin: ar4 # HEATER-BED PG5
sensor_type: EPCOS 100K B57560G104F
sensor_pin: analog10 # NTC-HEATBED PK2
control: pid
pid_Kp: 73.964
pid_Ki: 2.315
pid_Kd: 590.784
min_temp: 0
max_temp: 120
[fan]
pin: ar9 # FAN-E2 PH6
[mcu]
#serial: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
serial: /dev/ttyUSB0
pin_map: arduino
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 3000
max_accel_to_decel: 1250
max_z_velocity: 5
max_z_accel: 100
square_corner_velocity: 1.0
[display]
lcd_type: hd44780
# The type of LCD chip in use. This may be "hd44780" (which is used
# in "RepRapDiscount 2004 Smart Controller" type displays), "st7920"
# (which is used in "RepRapDiscount 12864 Full Graphic Smart
# Controller" type displays), "uc1701" (which is used in "MKS Mini
# 12864" type displays), or "ssd1306". This parameter must be
# provided.
rs_pin: ar20 # LCM-RS PD1
e_pin: ar17 # LCM-EN PH0
d4_pin: ar16 # LCM-D4 PH1
d5_pin: ar21 # LCM-D5 PD0
d6_pin: ar5 # LCM-D6 PE3
d7_pin: ar36 # LCM-D7 PC1
# The pins connected to an hd44780 type lcd. These parameters must
# be provided when using an hd44780 display.
#cs_pin:
#sclk_pin:
#sid_pin:
# The pins connected to an st7920 type lcd. These parameters must be
# provided when using an st7920 display.
#cs_pin:
#a0_pin:
# The pins connected to an uc1701 type lcd. These parameters must be
# provided when using an uc1701 display.
#cs_pin:
#dc_pin:
# The pins connected to an ssd1306 type lcd when in "4-wire" spi
# mode. The default is to use i2c mode for ssd1306 displays.
#menu_root:
# Entry point for menu, root menu container name. If this parameter
# is not provided then default menu root is used. When provided
# menu entry is 'deck' type then it'll be initiated immediately at startup.
# Description of menu items is located in example-menu.cfg file.
#menu_timeout:
# Timeout for menu. Being inactive this amount of seconds will trigger
# menu exit or return to root menu when having autorun enabled.
# The default is 0 seconds (disabled)
encoder_pins: ^ar40, ^ar42 # ENCODER-1 PG1, ENCODER-2 PL7
# The pins connected to encoder. 2 pins must be provided when
# using encoder. This parameter must be provided when using menu.
click_pin: ^!ar19 # ENCODER-BUTTON PD2
# The pin connected to 'enter' button or encoder 'click'. This parameter
# must be provided when using menu.
#back_pin:
# The pin connected to 'back' button. This parameter is optional, menu
# can be used without it.
#up_pin:
# The pin connected to 'up' button. This parameter must be provided
# when using menu without encoder.
#down_pin:
# The pin connected to 'down' button. This parameter must be provided
# when using menu without encoder.
#kill_pin:
# The pin connected to 'kill' button. This button will call
# emergency stop.
# BLTOUCH - Remove if you don't have it -----------------------------------------
#[homing_override]
#gcode:
# G91
# G1 Z20 F600
# G90
# G28 X0 Y0
# G1 X117 Y117 F3600
# G28 Z0
# G1 Z20
#axes: z
#set_position_z: 5
[bltouch]
sensor_pin: ar30 # Z-MIN PC7
control_pin: ar11 # Z-MIN-PROBE PB5
pin_move_time: 0.320
pin_up_reports_not_triggered: False
pin_up_touch_mode_reports_triggered: False
x_offset: -37
y_offset: 0
z_offset: 1.45
samples: 3
sample_retract_dist: 2.5
[bed_mesh]
speed: 50
horizontal_move_z: 6
mesh_min: 54,15
mesh_max: 233,220
probe_count: 4,4
algorithm: lagrange
[gcode_macro G29]
gcode:
G28
G1 Z10 F600
BED_MESH_CALIBRATE
# M300 : Play tone, Beeper support, as commonly found on usual LCD displays
# Usage: M300 [P<ms>] [S<Hz>] P is the tone duration, S the tone frequency.
#[output_pin BEEPER_pin]
#pin: ar18 # BEEPER PD3
#pwm: True
#value: 0
#shutdown_value: 0
#cycle_time: 0.001
#scale: 1000
#[gcode_macro M300]
#default_parameter_S=1000
#default_parameter_P=100
#gcode: SET_PIN PIN=BEEPER_pin VALUE={S}
# G4 P{P}
# SET_PIN PIN=BEEPER_pin VALUE=0

View File

@ -0,0 +1,205 @@
/**
* Marlin 3D Printer Firmware
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*****************************************************************
* GT2560 V3.0 pin assignment
******************************************************************/
#if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
#error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
#endif
#ifndef BOARD_NAME
#define BOARD_NAME "GT2560 V3.0"
#endif
//
// Servos
//
#define SERVO0_PIN 11 // 13 untested 3Dtouch // DIO11_PIN PINB5 PB5
//
// Limit Switches
//
#define X_MIN_PIN 24 //22 // DIO24_PIN PINA2 PA2
#define X_MAX_PIN 22 //24 // DIO22_PIN PINA0 PA0
#define Y_MIN_PIN 28 //26 // DIO28_PIN PINA6 PA6
#define Y_MAX_PIN 26 //28 // DIO26_PIN PINA4 PA4
#define Z_MIN_PIN 30 // DIO30_PIN PINC7 PC7
#define Z_MAX_PIN 32 // DIO32_PIN PINC5 PC5
#ifndef FIL_RUNOUT_PIN
#define FIL_RUNOUT_PIN 66 // DIO66_PIN PINK4 PK4
#endif
#ifndef FIL_RUNOUT2_PIN
#define FIL_RUNOUT2_PIN 67 // DIO67_PIN PINK5 PK5
#endif
// Detect power-loss
#define CONTINUITY_PIN 69 // DIO69_PIN PINK7 PK7
#define CONTINUITY_STATE HIGH
//
// Steppers
//
#define X_STEP_PIN 37 // DIO37_PIN PINC0 PC0
#define X_DIR_PIN 39 // DIO39_PIN PING2 PG2
#define X_ENABLE_PIN 35 // DIO35_PIN PINC2 PC2
#define Y_STEP_PIN 31 // DIO31_PIN PINC6 PC6
#define Y_DIR_PIN 33 // DIO33_PIN PINC5 PC5
#define Y_ENABLE_PIN 29 // DIO29_PIN PINA7 PA7
#define Z_STEP_PIN 25 // DIO25_PIN PINA3 PA3
#define Z_DIR_PIN 23 // DIO23_PIN PINA1 PA1
#define Z_ENABLE_PIN 27 // DIO27_PIN PINA5 PA5
#define E0_STEP_PIN 46 //43 // DIO46_PIN PINL3 PL3
#define E0_DIR_PIN 44 //45 // DIO44_PIN PINL5 PL5
#define E0_ENABLE_PIN 12 //41 // DIO12_PIN PINB6 PB6
#define E1_STEP_PIN 49 // DIO49_PIN PINL0 PL0
#define E1_DIR_PIN 47 // DIO47_PIN PINL2 PL2
#define E1_ENABLE_PIN 48 // DIO48_PIN PINL1 PL1
/**
* Default pins for TMC software SPI
*/
#if ENABLED(TMC_USE_SW_SPI)
#ifndef TMC_SW_MOSI
#define TMC_SW_MOSI 66 // DIO66_PIN PINK4 PK4
#endif
#ifndef TMC_SW_MISO
#define TMC_SW_MISO 44 // DIO44_PIN PINL5 PL5
#endif
#ifndef TMC_SW_SCK
#define TMC_SW_SCK 64 // DIO64_PIN PINK2 PK2
#endif
#endif
#if HAS_DRIVER(TMC2208)
/**
* TMC2208 stepper drivers
*
* Hardware serial communication ports.
* If undefined software serial is used according to the pins below
*/
//#define X_HARDWARE_SERIAL Serial1
//#define X2_HARDWARE_SERIAL Serial1
//#define Y_HARDWARE_SERIAL Serial1
//#define Y2_HARDWARE_SERIAL Serial1
//#define Z_HARDWARE_SERIAL Serial1
//#define Z2_HARDWARE_SERIAL Serial1
//#define E0_HARDWARE_SERIAL Serial1
//#define E1_HARDWARE_SERIAL Serial1
//#define E2_HARDWARE_SERIAL Serial1
//#define E3_HARDWARE_SERIAL Serial1
//#define E4_HARDWARE_SERIAL Serial1
/**
* Software serial
*/
#define X_SERIAL_TX_PIN 40 // DIO40_PIN PING1 PG1
#define X_SERIAL_RX_PIN 63 // DIO63_PIN PINK1 PK1
#define X2_SERIAL_TX_PIN -1
#define X2_SERIAL_RX_PIN -1
#define Y_SERIAL_TX_PIN 59 // DIO59_PIN PINF5 PF5
#define Y_SERIAL_RX_PIN 64 // DIO64_PIN PINK2 PK2
#define Y2_SERIAL_TX_PIN -1
#define Y2_SERIAL_RX_PIN -1
#define Z_SERIAL_TX_PIN 42 // DIO42_PIN PINL5 PL5
#define Z_SERIAL_RX_PIN 65 // DIO65_PIN PINK3 PK3
#define Z2_SERIAL_TX_PIN -1
#define Z2_SERIAL_RX_PIN -1
#define E0_SERIAL_TX_PIN 44 // DIO44_PIN PINL5 PL5
#define E0_SERIAL_RX_PIN 66 // DIO66_PIN PINK4 PK4
#define E1_SERIAL_TX_PIN -1
#define E1_SERIAL_RX_PIN -1
#define E2_SERIAL_TX_PIN -1
#define E2_SERIAL_RX_PIN -1
#define E3_SERIAL_TX_PIN -1
#define E3_SERIAL_RX_PIN -1
#define E4_SERIAL_TX_PIN -1
#define E4_SERIAL_RX_PIN -1
#endif
//
// Temperature Sensors
//
#define TEMP_0_PIN 11 // Analog Input (8) // DIO11_PIN PINB5 PB5
#define TEMP_1_PIN 9 // Analog Input // DIO9_PIN PINH6 PH6
#define TEMP_2_PIN -1 // Analog Input
#define TEMP_BED_PIN 10 // Analog Input // DIO10_PIN PINB4 PB4
//
// Heaters / Fans
//
#define HEATER_0_PIN 10 // DIO10_PIN PINB4 PB4
#define HEATER_1_PIN 3 // DIO3_PIN PINE5 PE5
#define HEATER_2_PIN -1
#define HEATER_BED_PIN 4 // DIO4_PIN PING5 PG5
#define FAN_PIN 9 // DIO9_PIN PINH6 PH6
//
// Misc. Functions
//
#define LED_PIN 6 // DIO6_PIN PINH3 PH3
#define PS_ON_PIN 12 // DIO12_PIN PINB6 PB6
#define KILL_PIN -1
#define SUICIDE_PIN 54 // PIN that has to be turned on right after start, to keep power flowing.
// DIO54_PIN PINF0 PF0
#if ENABLED(LIGHT_SUPPORT)
//#define LIGHT_SWITCH_PIN 21 // DIO21_PIN PIND0
#define LIGHT_PIN 6 // DIO6_PIN PINH3 PH3
#endif
//
// SD
//
#define SDSS 53 // DIO53_PIN PINB0 PB0
#define SD_DETECT_PIN 38 // DIO38_PIN PIND7 PD7
#define SDPOWER -1
//
// LCD / Controller
//
#define BEEPER_PIN 18 // DIO18_PIN PIND3 PD3
#define LCD_PINS_RS 20 // DIO20_PIN PIND1 PD1
#define LCD_PINS_ENABLE 17 // DIO17_PIN PINH0 PH0
#define LCD_PINS_D4 16 // DIO16_PIN PIOH1 PH1
#define LCD_PINS_D5 21 // DIO21_PIN PIND0 PD0
#define LCD_PINS_D6 5 // DIO5_PIN PINE3 PE3
#define LCD_PINS_D7 36 // DIO36_PIN PINC1 PC1
#if ENABLED(NEWPANEL)
#define BTN_EN1 42 // DIO42_PIN PINL7 PL7
#define BTN_EN2 40 // DIO40_PIN PING1 PG1
#define BTN_ENC 19 // DIO19_PIN PIND2 PD2
#endif

View File

@ -0,0 +1,185 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* GT2560 RevB + GT2560 V3.0 + GT2560 V3.1 + GT2560 V4.0 pin assignment
*/
#if NOT_TARGET(__AVR_ATmega1280__, __AVR_ATmega2560__)
#error "Oops! Select 'Arduino/Genuino Mega or Mega 2560' in 'Tools > Board.'"
#endif
#ifndef BOARD_INFO_NAME
#define BOARD_INFO_NAME "GT2560 V3.0"
#endif
//
// Servos
//
#define SERVO0_PIN 11 //13 untested 3Dtouch
//
// Limit Switches
//
#ifndef X_STOP_PIN
#ifndef X_MIN_PIN
#define X_MIN_PIN 24
#endif
#ifndef X_MAX_PIN
#define X_MAX_PIN 22
#endif
#endif
#ifndef Y_STOP_PIN
#ifndef Y_MIN_PIN
#define Y_MIN_PIN 28
#endif
#ifndef Y_MAX_PIN
#define Y_MAX_PIN 26
#endif
#endif
#ifndef Z_STOP_PIN
#ifndef Z_MIN_PIN
#define Z_MIN_PIN 30
#endif
#ifndef Z_MAX_PIN
#define Z_MAX_PIN 32
#endif
#endif
//
// Z Probe (when not Z_MIN_PIN)
//
#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN 32
#endif
//
// Runout Sensor
//
#ifndef FIL_RUNOUT_PIN
#define FIL_RUNOUT_PIN 66
#endif
#ifndef FIL_RUNOUT2_PIN
#define FIL_RUNOUT2_PIN 67
#endif
//
// Power Recovery
//
#define POWER_LOSS_PIN 69 // Pin to detect power loss
#define POWER_LOSS_STATE LOW
//
// Steppers
//
#define X_STEP_PIN 37
#define X_DIR_PIN 39
#define X_ENABLE_PIN 35
#define Y_STEP_PIN 31
#define Y_DIR_PIN 33
#define Y_ENABLE_PIN 29
#define Z_STEP_PIN 25
#define Z_DIR_PIN 23
#define Z_ENABLE_PIN 27
#define E0_STEP_PIN 46
#define E0_DIR_PIN 44
#define E0_ENABLE_PIN 12
#define E1_STEP_PIN 49
#define E1_DIR_PIN 47
#define E1_ENABLE_PIN 48
#define E2_STEP_PIN 43
#define E2_DIR_PIN 45
#define E2_ENABLE_PIN 41
//
// Temperature Sensors
//
#define TEMP_0_PIN 11 // Analog Input
#define TEMP_1_PIN 9 // Analog Input
#define TEMP_2_PIN 8 // Analog Input
#define TEMP_BED_PIN 10 // Analog Input
//
// Heaters / Fans
//
#define HEATER_0_PIN 10
#define HEATER_1_PIN 3
#define HEATER_2_PIN 2
#define HEATER_BED_PIN 4
#define FAN_PIN 9
#define FAN1_PIN 8
#define FAN2_PIN 7
//
// Misc. Functions
//
#define SD_DETECT_PIN 38
#define SDSS 53
#define LED_PIN 13 // Use 6 (case light) for external LED. 13 is internal (yellow) LED.
#define PS_ON_PIN 12
#define SUICIDE_PIN 54 // This pin must be enabled at boot to keep power flowing
#ifndef CASE_LIGHT_PIN
#define CASE_LIGHT_PIN 6 // 21
#endif
//
// LCD Controller
//
#define BEEPER_PIN 18
#ifndef LCD_PINS_RS
#define LCD_PINS_RS 20
#endif
#ifndef LCD_PINS_ENABLE
#define LCD_PINS_ENABLE 17
#endif
#ifndef LCD_PINS_D4
#define LCD_PINS_D4 16
#endif
#ifndef LCD_PINS_D5
#define LCD_PINS_D5 21
#endif
#ifndef LCD_PINS_D6
#define LCD_PINS_D6 5
#endif
#ifndef LCD_PINS_D7
#define LCD_PINS_D7 36
#endif
#if IS_NEWPANEL
#ifndef BTN_EN1
#define BTN_EN1 42
#endif
#ifndef BTN_EN2
#define BTN_EN2 40
#endif
#ifndef BTN_ENC
#define BTN_ENC 19
#endif
#endif

View File

@ -1,5 +1,5 @@
FROM lpenz/devuan-beowulf-armhf-minbase
#FROM lpenz/devuan-beowulf-armhf-minbase
FROM dyne/devuan:beowulf
SHELL ["/bin/bash", "-c"]
# Octoprint itself

View File

@ -10,7 +10,7 @@ if [ ! -f ${BaseDir}/config.yaml ]; then
yq -Y --arg octo_printer_port "${OCTO_PRINTER}/printer" \
--arg printer_cfg_path "${KLIPPER_HOME}/${PRINTER_CFG}" \
--arg klipper_log "${KLIPPER_HOME}/klippy.log" \
--arg klipper_log_path "${KLIPPER_HOME}/klippy.log" \
--arg klipper_port "${OCTO_PRINTER}/printer" '
.accessControl.salt = "vsT8lIM7l4BFopzXddW3mHnPbMZihN8a"
| .api.key = "F337D04D9B7F445C85562ED3DE53E7C5"
@ -34,7 +34,7 @@ if [ ! -f ${BaseDir}/config.yaml ]; then
| .plugins.gcodeviewer._config_version = 1
| .plugins.klipper._config_version = 2
| .plugins.klipper.configuration.configpath = $printer_cfg_path
| .plugins.klipper.configuration.logpath = $klipper_log
| .plugins.klipper.configuration.logpath = $klipper_log_path
| .plugins.klipper.connection.port = $klipper_port
| .plugins.octolapse._config_version = 3
| .plugins.tracking.enabled = false

View File

@ -2,7 +2,8 @@
ARG OP_MACHINE_NAME
#FROM balenalib/${OP_MACHINE_NAME:-%%RESIN_MACHINE_NAME%%}-debian:buster
FROM lpenz/devuan-beowulf-armhf-minbase
#FROM lpenz/devuan-beowulf-armhf-minbase
FROM dyne/devuan:beowulf
RUN echo "deb http://deb.devuan.org/merged/ beowulf main contrib non-free" > /etc/apt/sources.list