Thanks you all.
dc42> may I suggest you break out the 12V with an actual 2A capable connector for the next revision? This is a really compelling power rail.
Thanks you all.
dc42> may I suggest you break out the 12V with an actual 2A capable connector for the next revision? This is a really compelling power rail.
Hi all, I am in the information phase for a 5 axes machine, and I was wondering what's the status around tool center management.
For people not in the know, the idea for a swinging spindle is that when we incline a tool, we need to raise the Z accordingly to keep the tool tip at the same position wrt. the part (and it gets worse from there, because feedrate and accelerations are computed at the tool tip). That means the Machine knows it own kinematics, and that there is a solid way to calibrate it: measure the distance between the various centers of rotation and tell the controller about it. It's like radius cutter comp, but on steroid and at tool center.
Do you know any open source controller that does that? is there interest in trying to add that to reprap?
Are there other keywords I should look for in google?
Thanks,
Nico.
edit: after looking a bit harder, I found out that linuxCNC seems to support this kind of things by heavy configuration: https://forum.linuxcnc.org/10-advanced-configuration/31813-tcp-5-axis-kinematics?start=120#139881 I leave the link here, in case a google wanderer flies by.
I put my software retraction parameter in my material file, was it wrong?
I configured 2 probes on my machine (K0 and K1), and I never see K1 value change with G31 K1
(and I see the corresponding LED change value on the board when I activate the switch by hand), but when I move it to K0, then G31 K0
does reflect the status of the probe.
here is a sequence of event (time flow bottom up):
<---- release ystop
18:07:24G31 K0
Current reading 1000, threshold 500, trigger height 0.700, offsets X0.0 Y0.0
<---- activate ystop by hand
18:07:16G31 K0
Current reading 0, threshold 500, trigger height 0.700, offsets X0.0 Y0.0
18:07:04M558 K1
Z Probe 1: type 0, invert no, dive height 5.0mm, probe speed 120mm/min, travel speed 6000mm/min, recovery time 0.00 sec, heaters normal, max taps 1, max diff 0.03
18:07:00M558 K0
Z Probe 0: type 5, input pin !ystop, output pin nil, invert no, dive height 5.0mm, probe speed 10000mm/min, travel speed 6000mm/min, recovery time 0.00 sec, heaters normal, max taps 1, max diff 0.03
18:06:55M558 K0 P5 C"!ystop" F10000
18:06:39M558 K1 P0 C"nil"
<---- release ystop
18:06:02G31 K1
Current reading 0, threshold 500, trigger height 0.700, offsets X0.0 Y0.0
<---- activate ystop by hand
18:05:49G31 K1
Current reading 0, threshold 500, trigger height 0.700, offsets X0.0 Y0.0
18:05:36M558 K1
Z Probe 1: type 5, input pin !ystop, output pin nil, invert no, dive height 5.0mm, probe speed 10000mm/min, travel speed 6000mm/min, recovery time 0.00 sec, heaters normal, max taps 1, max diff 0.03
18:05:30M558 K0
Z Probe 0: type 5, input pin !e1stop, output pin nil, invert no, dive height 3.0mm, probe speed 400mm/min, travel speed 6000mm/min, recovery time 0.00 sec, heaters normal, max taps 5, max diff 0.03
18:05:14M558 K1 P5 C"!ystop" F10000
18:04:59M574 S1 Y0 C"nil"
some version strings:
Firmware Name: RepRapFirmware for Duet 2 WiFi/Ethernet
Firmware Electronics: Duet WiFi 1.02 or later + DueX5
Firmware Version: 3.0 (2020-01-03b3)
WiFi Server Version: 1.23
Web Interface Version: 1.22.6
I found it! Thanks for your help.
I need more time or more distance to back out of the switches after the coarse homing (what's weird is that I had the same issue in X and Y). That's why I couldn't find the issue line by line.
have you de-bounced the switches or changed the execution order?
In my limited testing (the software side of this project feels like being a ball at a rugby game, everything is just hard, I don't know what conclusion actually hold), homing without G53 was placing the tool center at the switch trigger point instead of placing the machine zero there.
I will look into the relative movements, I need to find the original example files, thanks.
; homey.g
; called to home the Y axis
;
; generated by RepRapFirmware Configuration Tool on Wed Nov 15 2017 23:36:04 GMT-0700 (MST)
; Lift Z relative to current position
G91
G1 Z2 F6000
G90
; M98 P"outdanger.g"
; Move quickly to Y axis endstop and stop there (first pass)
G53 G1 Y-415 F10000 H1
; Go back a few mm
G53 G1 Y3 F40000
; Move slowly to Y axis endstop once more (second pass)
G53 G1 Y-415 F360 H1
G53 G1 Y2 F10000
; Lower Z again
G91
G1 Z-2 F6000
G90
it has moved and done the coarse homing right before that.
executing it line by line seems to work ok:
22:48:41G90
22:48:35G1 Z-2 F6000
22:48:28G91
22:48:22G53 G1 Y2 F10000
22:48:16G53 G1 Y-415 F360 H1
22:48:05G53 G1 Y3 F40000
22:47:56G53 G1 Y-415 F10000 H1
22:47:47G90
22:47:40G1 Z2 F6000
22:47:32G91
22:47:31Connection established!
I really don't know. running `M98 P"homey.g"' triggers the issue too.
edit: I get the bug both with and without the pullup, but I don't see any influence of this setting the web interface anyways (the switch works perfectly in my tests in the web interface)
yes.
I don't have a reboot in my configuration, but I still have a weird hang during homing.
is there a way to dump the state of the machine? I feel like it's waiting for something.
here is a log during homing:
21:59:09M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.0RC2 running on Duet WiFi 1.02 or later + DueX5
Board ID: 08DDM-9FAM2-LW4SD-6JKD4-3S46L-92X3W
Used output buffers: 10 of 24 (16 max)
=== RTOS ===
Static ram: 30516
Dynamic ram: 93164 of which 12 recycled
Exception stack ram used: 488
Never used ram: 6892
Tasks: NETWORK(ready,640) HEAT(blocked,1184) DUEX(suspended,160) MAIN(running,3676) IDLE(ready,156)
Owned mutexes:
=== Platform ===
Last reset 00:27:43 ago, cause: software
Last software reset at 2019-12-29 21:31, reason: User, spinning module GCodes, available RAM 6788 bytes (slot 0)
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
Error status: 0
Free file entries: 9
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest block write time: 0.0ms, max retries 0
MCU temperature: min 33.9, current 35.2, max 35.7
Supply voltage: min 24.0, current 24.1, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
Driver 0: standstill, SG min/max 359/1023
Driver 1: standstill, SG min/max 344/1023
Driver 2: standstill, SG min/max not available
Driver 3: standstill, SG min/max 56/1023
Driver 4: standstill, SG min/max 0/196
Driver 5: standstill, SG min/max not available
Driver 6: standstill, SG min/max not available
Driver 7: standstill, SG min/max not available
Driver 8: standstill, SG min/max not available
Driver 9: standstill, SG min/max not available
Date/time: 2019-12-29 21:59:08
Cache data hit count 4294967295
Slowest loop: 8.01ms; fastest: 0.09ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Move ===
Hiccups: 0(0), FreeDm: 169, MinFreeDm: 165, MaxWait: 1652015ms
Bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves: 8, completed moves: 3, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
=== AuxDDARing ===
Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== GCodes ===
Segments left: 1
Stack records: 2 allocated, 1 in use
Movement lock held by http
http is doing "G53 G1 Y-415 F360 H1" in state(s) 0 8, running macro
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: 15.86ms; fastest: 0.00ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
HTTP sessions: 1 of 8
- WiFi -
Network state is running
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.23
WiFi MAC address 60:01:94:34:3b:19
WiFi Vcc 3.37, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 19376
WiFi IP address 192.168.0.28
WiFi signal strength -57dBm, reconnections 0, sleep mode modem
Socket states: 0 0 0 0 0 0 0 0
21:58:58G28 Y
I may have been chasing a red herring:
M552 S0 ; awaken wifi module and set to idle
M587 S"NUMERICABLE-B290" P"PASS" ; send this line to be saved in wifi module
M552 S1 ; connect the wifi module to the network
of course, those lines looks like a reboot.
thanks for your help, I'll start right now.
@Phaedrux I am using the old page at /reprap.htm#
it's more confortable and shows more things for diagnostics.
@dc42 actually after commenting M558 and G31 I still get the reboot:
19:32:11M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.0RC2 running on Duet WiFi 1.02 or later + DueX5
Board ID: 08DDM-9FAM2-LW4SD-6JKD4-3S46L-92X3W
Used output buffers: 1 of 24 (17 max)
=== RTOS ===
Static ram: 30516
Dynamic ram: 93164 of which 44 recycled
Exception stack ram used: 256
Never used ram: 7092
Tasks: NETWORK(ready,640) HEAT(blocked,1240) DUEX(suspended,160) MAIN(running,3676) IDLE(ready,156)
Owned mutexes:
=== Platform ===
Last reset 00:00:46 ago, cause: software
Last software reset at 2019-12-29 19:31, reason: User, spinning module GCodes, available RAM 7432 bytes (slot 0)
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 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: 0.0ms, max retries 0
MCU temperature: min 34.3, current 35.7, max 36.2
Supply voltage: min 24.0, current 24.1, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
Driver 0: standstill, SG min/max not available
Driver 1: standstill, SG min/max not available
Driver 2: standstill, SG min/max not available
Driver 3: standstill, SG min/max not available
Driver 4: standstill, SG min/max not available
Driver 5: standstill, SG min/max not available
Driver 6: standstill, SG min/max not available
Driver 7: standstill, SG min/max not available
Driver 8: standstill, SG min/max not available
Driver 9: standstill, SG min/max not available
Date/time: 2019-12-29 19:32:09
Cache data hit count 105424755
Slowest loop: 128.25ms; fastest: 0.09ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Move ===
Hiccups: 0(0), FreeDm: 169, MinFreeDm: 169, MaxWait: 0ms
Bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
=== AuxDDARing ===
Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== GCodes ===
Segments left: 0
Stack records: 2 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: 116.61ms; fastest: 0.00ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
HTTP sessions: 1 of 8
- WiFi -
Network state is running
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.23
WiFi MAC address 60:01:94:34:3b:19
WiFi Vcc 3.37, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 24608
WiFi IP address 192.168.0.28
WiFi signal strength -60dBm, reconnections 0, sleep mode modem
Socket states: 0 0 0 0 0 0 0 0
19:32:06Connection established!
19:32:05Disconnected.
19:31:41Connection established!
19:31:41Page Load complete!
I deny that this reboot was directly asked by me, I don't see any reboot command in my files, and it is the result of the M98 P"config.g"