====== 3D printer ======
===== Resources =====
* [[https://www.youtube.com/watch?v=OzRAVkXjw3I|hotend change]]
* mount heatbreak and nozzle touching toghether and with** 0.5mm gap** between head and nozzle
* preheat hotend at ABS temp
* fix nozzle with 1nm torque
* [[https://www.matterhackers.com/articles/how-to-assemble-an-e3d-v6-all-metal-hotend|E3D V6 assembly]]
* [[https://www.thingiverse.com/thing:3547428|temperature tower]]
* set combing mode to off
z offset: subtract 0.25 to A4 paper without friction and without warm up
===== Printing tips =====
* Initial Layer Speed: 20mm/s
* Combing mode: not in skin
* Maximum Comb Distance with No Retract: 10mm
* Initial Layer Line Width: 140%
PLA:
* z-hop: 0
PETG:
* first layer: 245
* other layer: 245
* bed: 80
* z-hop: 0.6
* cooling: 50%
ABS:
* first layer: 250
* other layer: 240
* bed: 100
* z-hop: 0.6 or 0
* adhesion: brim
* speed:
* 30mm/s for stronger material
* 50mm/s for weaker material
===== Anycubic 4max pro 2 =====
* [[https://www.thingiverse.com/thing:4783386|fan duct]]
* [[https://www.youtube.com/watch?v=yUAeUtXBBNA|extruder disassemble, head replace]]
[general]
version = 4
name = 4MAXpro2.0 PETG fast
definition = anycubic_4max
[metadata]
type = quality_changes
quality_type = normal
intent_category = default
position = 0
setting_version = 19
[values]
cool_fan_enabled = True
cool_fan_speed = 50
infill_pattern = grid
infill_sparse_density = 20
initial_layer_line_width_factor = 140
material_initial_print_temperature = =max(-273.15, material_print_temperature - 10)
material_print_temperature = 245
material_print_temperature_layer_0 = 245
optimize_wall_printing_order = True
raft_margin = 5
retraction_combing_max_distance = 10
retraction_hop = 0.6
retraction_hop_enabled = True
speed_layer_0 = 20
speed_print = 50
speed_print_layer_0 = =speed_layer_0
speed_travel = 100
speed_travel_layer_0 = =speed_layer_0 * speed_travel / speed_print
top_layers = =0 if infill_sparse_density == 100 else math.ceil(round(top_thickness / resolveOrValue('layer_height'), 4))
travel_avoid_other_parts = False
wall_line_count = =1 if magic_spiralize else max(1, round((wall_thickness - wall_line_width_0) / wall_line_width_x) + 1) if wall_thickness != 0 else 0
[general]
version = 4
name = 4MAXpro2.0 PETG fast
definition = anycubic_4max
[metadata]
type = quality_changes
quality_type = normal
setting_version = 19
[values]
adaptive_layer_height_enabled = False
adhesion_type = skirt
default_material_bed_temperature = 60
layer_height = 0.3
material_bed_temperature = 80
material_bed_temperature_layer_0 = 80
retraction_combing = noskin
support_enable = False
support_type = buildplate
===== Flsun Super Racer =====
todo
===== Ender3 v2 ====
* bed 70
* head 225
* Retraction Distance: 6.5mm.
* Retraction Speed: 25mm/s.
* Maximum Retraction Count: 10.
* Minimum Extrusion Distance Window: 10mm.
* Combing Mode: ON and set to “Within Infill” (no stringing).
* fan 100% for details or fan 0% for stranght
* [[https://www.smith3d.com/ender-3-v2-bltouch-firmware-installation-guide-by-smith3d-com/|bltouch]]
* [[https://github.com/Jyers/Marlin/wiki/OctoPrint-Settings|jyers firmware settings in octoprint]]
*
===== Geeetech A20 =====
first layer speed 10mm/s
into start g-code keep only first G28 as below
G28; auto home
G1 Z15 F300; linear move, 15mm vertical and set feedrate at 300
M107; turn fan off
G90 ; absolute positioning
M82 ; This command is used to override G91 and put the E axis into absolute mode independent of the other axes.
G92 E0; set absolute position
M107 ; M107; turn fan off
G0 X10 Y20 F6000 ; move to X 10 mm Y 20 mm , feed rate 6000
G1 Z0.8 ; move Z to 0.8 mm [WHY MOVE VERTICALLY?]
G1 F300 X200 E40 ; push 40 mm of filament while moving at 300 mm/min to position X=200
G1 F1200 Z2 ; move to position Z=2 at 1200 mm/min
G92 E0 ; set the extruder position as the new zeros
fetch marlin code and checkout same branch release on Marlin.git and Configurations.git
apply this {{ :projects:a20.txt |patch}}
git clone https://github.com/MarlinFirmware/Marlin.git
#git clone https://github.com/Jyers/Marlin.git
cd Marlin
check out latest release branch, for example 2.0.9.2
git clone https://github.com/MarlinFirmware/Configurations.git
cd Configurations
check out latest release branch, for example 2.0.9.2
#git clone https://github.com/Jyers/Configurations.git
# copy Configuration.h and Configuration_adv.h from examples
cd ..
rsync -av Configurations/config/examples/Geeetech/A20/ Marlin/
code .
// select default shell to bash Terminal: Select Default Profile
// change MOTHERBOARD
#define MOTHERBOARD BOARD_GT2560_V4_A20
// enable bltouch if present
// comment PROBE_MANUALLY and decomment BLTOUCH
//#define PROBE_MANUALLY
#define BLTOUCH
#define Z_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // Set to true to invert the logic of the probe.
#define Z_SAFE_HOMING
// temporary
#define X_BED_SIZE 200
#define Y_BED_SIZE 200
#define X_MIN_POS -10
// original plate 260x260
//#define X_BED_SIZE 255
//#define Y_BED_SIZE 255
//#define Y_MIN_POS -5
install marlin auto build extension
change vscode settings.json
{
"terminal.integrated.defaultProfile.linux": "bash"
}
To upload firmware add a **custom FFF** (no geeetech A20 model) printer and use upload firmware menu
* [[https://3dprintscape.com/z-offset-wizard-complete-guide/|z offset wizard]]
* [[https://3dwork.io/en/complete-guide-configure-marlin-2-0-x-from-scratch/|pid tuning]]
===== Anycubic Predator =====
[[https://drive.google.com/open?id=1pLx91uRtOhpvr_JOwQ236TsJPi-499JM|manual]]
[[https://www.youtube.com/watch?v=fbarSmBh56Q|silicone 039]]
* [[https://www.italia3dprint.it/recensione-anycubic-predator/|recensione 1]]
* [[https://www.italia3dprint.it/anycubic-predator-qualita-di-stampa/|customizzazioni]]
* [[https://www.thingiverse.com/thing:4053506|cura profile]]
* rename predator_image.png.stl to predator_image.png
custom spare parts:
* [[https://www.thingiverse.com/thing:4054734|enclosure]]
* [[https://www.thingiverse.com/thing:3585762|Fan Duct]]
* [[https://www.thingiverse.com/thing:4099765|sensor holder]]
* [[https://www.thingiverse.com/thing:4133801|smoothers holder]]
* [[https://www.thingiverse.com/thing:3665598|Filament Sensor Relocation]]
* [[https://www.thingiverse.com/thing:4622676/files|Ultimate Anycubic Predator Effector]]
* [[https://www.thingiverse.com/thing:3757187/files|Anycubic Predator E3D V6 and Volcano Versions Effector]]
* [[https://www.thingiverse.com/thing:4690736/files|V6 Super Effector for Anycubic Predator (SB3D)]]
==== Marlin firmware predator ====
clone this [[https://github.com/SXHXC/Marlin-Anycubic-Predator-Trigorilla-PRO|repository]]
clone this [[https://github.com/scipioni/Marlin.git|marlin 2.0.9]]
or update scipio
cd /lab/printer3d/marlin-predator
# only one time
#git remote add upstream https://github.com/MarlinFirmware/Marlin.git
git fetch upstream
git rebase upstream/2.0.x
add to Marlin/Configuration.h
#define LCD_SCREEN_ROT_180
change
#define TEMP_SENSOR_0 11
decomment in Marlin/Configuration_adv.h
// Enable for M105 to include ADC values read from temperature sensors.
#define SHOW_TEMP_ADC_VALUES
build project: in platformio select trigorilla-pro
scp .pio/build/trigorilla_pro/firmware.bin root@octoprint.local:/root
remove jumper jp1 and change other jumper to USB [[https://www.youtube.com/watch?v=g2cAJXle6t0|video]]
getting info
stm32flash /dev/ttyUSB0
stm32flash 0.5
http://stm32flash.sourceforge.net/
Interface serial_posix: 57600 8E1
Version : 0x22
Option 1 : 0x00
Option 2 : 0x00
Device ID : 0x0414 (STM32F10xxx High-density)
- RAM : 64KiB (512b reserved by bootloader)
- Flash : 512KiB (size first sector: 2x2048)
- Option RAM : 16b
- System RAM : 2KiB
make backup
stm32flash -r predator-original.bin /dev/ttyUSB0
write firmware
stm32flash -v -R -b 57600 -g 0x8000000 -w firmware.bin /dev/ttyUSB0
platformio.ini
[env:trigorilla_pro]
platform = ststm32
board = genericSTM32F103ZE
build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py
=== Auto calibration ===
* configuration -> delta calibration -> auto -> enter -> wait -> enter
* configuration -> store
=== z offset ===
Disable software endstops (M211 S0), preheat and with motion z to grab paper: get deltaz (positive or negative, for example 0.3)
* configuration -> runout sensors -> off
* temperature -> preheat PLA -> preheat PLA
* motion -> z
adjust probe z-offest adding deltaz:
* configuration -> probe z-offest -> =**z-offest+deltaz**
enable software endstops (M211 S1)
store settings
=== z babysteps ===
M290 Z0.25 ; move up 0.25mm on the Z axis
...
M500 ; store
==== PID autotune ====
start pid autotune at 220C and 8 cycles
M303 S220 C8
wait and
store proposed values with M301
M301 P13.83 I0.76 D63.18
save settings
M500
==== Thermocouple tuning ====
Get actual extrusor thermocouple from Menu -> About -> Thermistors and from Configuration.h get actual thermistor_xx.h utilized
set hotend to 200C from control and check in terminal ADC value (138.06 in example)
Recv: T:200.47 /200.00 (138.06) B:21.64 /0.00 (982.37) @:47 B@:0
{{:projects:calibration.png?400|}}