Tronxy X5S questions
-
Hello,
Would anyone with a Tronxy X5S be willing to share their settings?
I'm having an issue with the x and y movement on my X5S after changing to a Duet 2 Ethernet. When I do either a X or Y move I get diagonal drift and I am trying to fix it. I am running the motors at 950mA with a 30% idle current percentage. I am wondering what other people have these settings at, I don't want to damage the motors. I've also replaced the stock bearings with toothed and smooth bearings with integrated belt guides. The bearings all move when turned by hand. I've read the article at https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter and am not understanding the process but I will keep trying.
Any advice is appreciated.
Thanks,
Tom
-
Can you post your config file as it is now?
And probably your homing files as well. -
Thanks for the reply, I appreciate it! The motors are set for 1200 right now and it didn't seem to make a difference from 950.
Here is the config file:
; Configuration file for Duet Ethernet (firmware version 1.21)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool on Wed Oct 17 2018 22:08:57 GMT-0500 (Central Daylight Time); General preferences
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder movesM667 S1 ; Select CoreXY mode
; Network
M550 PTronxy X5S ; Set machine name
M552 P192.168.0.95 S1 ; Enable network and set IP address
M553 P255.255.255.0 ; Set netmask
M554 P192.168.0.1 ; Set gateway
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable Telnet; Drives
M569 P0 S1 ; Drive 0 goes forwards
M569 P1 S1 ; Drive 1 goes forwards
M569 P2 S0 ; Drive 2 goes backwards
M569 P3 S0 ; Drive 3 goes backwards
M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
M92 X80 Y80 Z400 E98 ; Set steps per mm
M566 X600 Y600 Z12 E120 ; Set maximum instantaneous speed changes (mm/min)
M203 X18000 Y18000 Z180 E1500 ; Set maximum speeds (mm/min)
M201 X3000 Y3000 Z100 E10000 ; Set accelerations (mm/s^2)
M906 X1200 Y1200 Z1200 E1200 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; Set axis minima
M208 X330 Y330 Z400 S0 ; Set axis maxima; Endstops
M574 X1 Y1 Z1 S0 ; Set active low endstops; Z-Probe
M558 P5 H5 F0 T6000 ; Set Z probe type to switch and the dive height + speeds
G31 P500 X0 Y0 Z0 ; Set Z probe trigger value, offset and trigger height
M557 X15:315 Y15:315 S20 ; Define mesh grid; Heaters
M307 H0 B0 S1.00 ; Disable bang-bang mode for the bed heater and set PWM limit
M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
M143 H0 S120 ; Set temperature limit for heater 0 to 120C
M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1
M143 H1 S280 ; Set temperature limit for heater 1 to 280C; Fans
M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on; Tools
M563 P0 D0 H1 ; Define tool 0
G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C; Automatic power saving
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss; Custom settings are not configured
And here is the homeall file:
; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool on Wed Oct 17 2018 22:08:57 GMT-0500 (Central Daylight Time)
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
G1 S1 X-335 Y-335 F1800 ; move quickly to X or Y endstop and stop there (first pass)
G1 S1 X-335 ; home X axis
G1 S1 Y-335 ; home Y axis
G1 X5 Y5 F6000 ; go back a few mm
G1 S1 X-335 F360 ; move slowly to X axis endstop once more (second pass)
G1 S1 Y-335 ; then move slowly to Y axis endstop
G1 S1 Z-405 F1800 ; move Z down stopping at the endstop
G90 ; absolute positioning
G92 Z0 ; set Z to axis minimum (you may want to adjust this); Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 S2 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioningThe homex file:
; homex.g
; called to home the X axis
;
; generated by RepRapFirmware Configuration Tool on Wed Oct 17 2018 22:08:57 GMT-0500 (Central Daylight Time)
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
G1 S1 X-335 F1800 ; move quickly to X axis endstop and stop there (first pass)
G1 X5 F6000 ; go back a few mm
G1 S1 X-335 F360 ; move slowly to X axis endstop once more (second pass)
G1 Z-5 F6000 S2 ; lower Z again
G90 ; absolute positioningThe homey file:
; homey.g
; called to home the Y axis
;
; generated by RepRapFirmware Configuration Tool on Wed Oct 17 2018 22:08:57 GMT-0500 (Central Daylight Time)
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
G1 S1 Y-335 F1800 ; move quickly to Y axis endstop and stop there (first pass)
G1 Y5 F6000 ; go back a few mm
G1 S1 Y-335 F360 ; move slowly to Y axis endstop once more (second pass)
G1 Z-5 F6000 S2 ; lower Z again
G90 ; absolute positioningThe homez file:
; homez.g
; called to home the Z axis
;
; generated by RepRapFirmware Configuration Tool on Wed Oct 17 2018 22:08:57 GMT-0500 (Central Daylight Time)
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
G1 S1 Z-405 F1800 ; move Z down until the endstop is triggered
G92 Z0 ; set Z position to axis minimum (you may want to adjust this); Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 S2 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioning -
@tletourneau said in Tronxy X5S questions:
https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter
What firmware version are you using?
Have you gone through the movement section of that link? Specifically the part where you move each motor independently to verify the motors are turning in the right direction?
-
Thanks for asking about the independant X and Y tests. I just ran them and it look like the X motor is fine but the Y motor is having an issue. I will get a video, put it on YouTube, and link it here. Here are my firmware diagnostics.
9:23:45 PMM122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 2.01(RTOS) running on Duet Ethernet 1.02 or later
Board ID: 08DGM-9T6BU-FG3S0-7JTDJ-3SD6N-KS5VF
Used output buffers: 3 of 20 (7 max)
=== RTOS ===
Static ram: 28476
Dynamic ram: 95940 of which 16 recycled
Exception stack ram used: 348
Never used ram: 6292
Tasks: NETWORK(ready,328) HEAT(blocked,1248) MAIN(running,3540)
Owned mutexes:
=== Platform ===
Last reset 00:08:25 ago, cause: software
Last software reset time unknown, reason: User, spinning module GCodes, available RAM 6156 bytes (slot 1)
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
Error status: 0
Free file entries: 10
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest block write time: 9.4ms, max retries 0
MCU temperature: min 35.7, current 36.1, max 36.4
Supply voltage: min 24.0, current 24.1, max 24.2, under voltage events: 0, over voltage events: 0
Driver 0: standstill, SG min/max 0/1023
Driver 1: standstill, SG min/max 0/1023
Driver 2: standstill, SG min/max not available
Driver 3: standstill, SG min/max not available
Driver 4: standstill, SG min/max not available
Date/time: 1970-01-01 00:00:00
Slowest loop: 7.95ms; fastest: 0.07ms
=== Move ===
Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm: 238, MaxWait: 250641ms, Underruns: 0, 0
Scheduled moves: 13, completed moves: 13
Bed compensation in use: none
Bed probe heights: 0.000 0.000 0.000 0.000 0.000
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
=== GCodes ===
Segments left: 0
Stack records: 1 allocated, 0 in use
Movement lock held by null
http is idle in state(s) 0
telnet is idle in state(s) 0
file is idle in state(s) 0
serial is idle in state(s) 0
aux is idle in state(s) 0
daemon is idle in state(s) 0
queue is idle in state(s) 0
autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 495.65ms; fastest: 0.02ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
HTTP sessions: 1 of 8
Interface state: 5
=== Expansion === -
Here is a video of running the X/Y tests: https://www.youtube.com/watch?v=ej4KsuKsWrg
-
Can you try this part? Or was this the part you tested in the video?
Commissioning
During commissioning, you can test the X and Y motors independently by using the S2 modifier on the G1 command, like this:G91 ; relative mode
G1 S2 X10 ; move the X motor forward 10mm
G1 S2 X-10 ; move the X motor back 10mm
G1 S2 Y10 ; move the Y motor forward 10mm
G1 S2 Y-10 ; move the Y motor back 10mm
G90 ; back to absolute modeTry it with the belts connected. And if it still stalls when moving the y motor. Try with the belts disconnected. If the motor turns the correct direction (watch when it turns and correlate it to how it would move the belts and the gantry) then we know you're configured correctly and can look closer for a mechanical issue.
You mention some binding in your video. With the belts disconnected can you move the print head smoothly in all directions?
Becareful when moving the print head with the belts connected to the motors. If you move too quickly you can generate enough current with the motors to damage the duet drivers. The speed you were moving should be fine but I wouldn't want to go any faster.
-
Hello, that is what I was doing in the video. I created macros to do it quickly. I will try it without the belts after work tomorrow and update the thread. It doesn't seem any more or less difficult to move the gantry than before upgrading it. Thanks for the pointer about engaging the motors, I will be careful.
-
Here are the motor specs if it helps, I'm not against replacing the motors if needed.
The SL42STH40-1684A motor specs are:
Step Angle: 1.8°
Step Angle Accuracy: ±5% (full step, no load)
Voltage: 2.8V
Current per phase: 1.68A
Resistance per phase: 1.65Ω
Resistance accuracy: ±10%
Inductance per phase: 3.2mH
Inductance accuracy: ±20%
Holding torque: 3.6 Kg·cm (0.4 N·m)
Moment of inertia: 54 g/cm^2
Weight: 0.28 kg
Orientation torque: 150 g/cm
Length: 40 mm
Temperature rise: 80°C max (rated current, 2 phases on)
Ambient temperature: -20°C ~ +50°C
Insulation resistance: 100MΩ min, 500VDC
Shaft radial play: 0.02 mm max (450g load)
Shaft axial play: 0.08 mm max (450g load)
Max. radial force: 28N (20mm from the flange)
Max. axial force: 10N -
Y is working now, the cable had two bad crimps. I didn't check it first because I had a retired MM2 Senior Chief redo the cables for me (my brother). X and Y are now working correctly!
I want to thank everyone for the assistance, I truly appreciate it!
-
Glad you got it sorted.
Have fun with the rest of commissioning.