Thanks a lot, this fixed it.
Best posts made by Superbrain8
-
RE: Macro for Testing Max Accleration
@jay_s_uk didnt really showed up when searching for it, the pinned macros showed up but they are a bit bulky
Latest posts made by Superbrain8
-
Issue with SZP on Secondary Idex Toolhead
Merry Christmas Together,
Ive got around installing a SZP to my idex, since ive got a probe already on the primary toolhead ive got it installed on the Secondary Toolhead.
Got it all configured the probe works too.
My issue is that the Scanning and resulting Mesh is Rotated by 90° i suspect its because the probe is mounted on the U Axis instead X Axis, the mesh is also configured to use the U Axis instead the X Axis.Running a Duet 3 Mini 5+ with 2 1LC Toolboards and the SZP Sensor
Firmware version for the boards is 3.5.3M122 output:
=== Diagnostics === RepRapFirmware for Duet 3 Mini 5+ version 3.5.3 (2024-09-18 11:25:48) running on Duet 3 Mini5plus WiFi (standalone mode) Board ID: YQ6KF-K096U-D65J0-40KMG-4G03Z-H28XK Used output buffers: 12 of 40 (38 max) === RTOS === Static ram: 103368 Dynamic ram: 125268 of which 328 recycled Never used RAM 9596, free system stack 132 words Tasks: NETWORK(2,nWait 7,15.1%,227) LASER(5,nWait 7,0.0%,167) HEAT(3,nWait 6,0.0%,325) Move(4,nWait 6,0.1%,256) CanReceiv(6,nWait 1,0.1%,773) CanSender(5,nWait 7,0.0%,336) CanClock(7,delaying,0.0%,348) TMC(4,nWait 6,0.8%,101) MAIN(1,running,82.8%,665) IDLE(0,ready,0.2%,29) AIN(4,delaying,0.8%,259), total 100.0% Owned mutexes: === Platform === Last reset 00:25:13 ago, cause: software Last software reset at 2024-12-24 16:59, reason: User, Gcodes spinning, available RAM 9596, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 MCU revision 3, ADC conversions started 1134884, completed 1134884, timed out 0, errs 0 MCU temperature: min 22.3, current 23.8, max 26.1 Supply voltage: min 24.1, current 24.1, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/224/176, gc cycles 0 Events: 0 queued, 0 completed Driver 0: standstill, SG min 0, read errors 0, write errors 1, ifcnt 77, reads 14030, writes 45, timeouts 0, DMA errors 0, CC errors 0 Driver 1: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14024, writes 51, timeouts 0, DMA errors 0, CC errors 0 Driver 2: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14023, writes 51, timeouts 0, DMA errors 0, CC errors 0 Driver 3: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14023, writes 51, timeouts 0, DMA errors 0, CC errors 0 Driver 4: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14024, writes 51, timeouts 0, DMA errors 0, CC errors 0 Driver 5: not present Driver 6: not present Date/time: 2024-12-24 17:25:06 Cache data hit count 2834372371 Slowest loop: 26.54ms; fastest: 0.15ms === Storage === Free file entries: 20 SD card 0 detected, interface speed: 22.5MBytes/sec SD card longest read time 5.4ms, write time 3.7ms, max retries 0 === Move === DMs created 83, segments created 14, maxWait 196473ms, bed compensation in use: mesh, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 194, on retry 1, too short 0, wrong shape 574, maybepossible 0 === DDARing 0 === Scheduled moves 1250, completed 1250, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 18], CDDA state -1 === DDARing 1 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 1 is on, I-accum = 0.0 === GCodes === Movement locks held by null, null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 File2 is idle in state(s) 0 Queue2 is idle in state(s) 0 Q0 segments left 0, axes/extruders owned 0x0000803 Code queue 0 is empty Q1 segments left 0, axes/extruders owned 0x0000000 Code queue 1 is empty === Filament sensors === check 0 clear 0 Extruder 0: no data received, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0 Extruder 1: no data received, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0 === CAN === Messages queued 15372, received 77225, lost 0, errs 0, boc 0 Longest wait 6ms for reply type 6061, peak Tx sync delay 378, free buffers 26 (min 24), ts 7566/7565/0 Tx timeouts 0,0,0,0,0,0 === Network === Slowest loop: 26.95ms; fastest: 0.00ms Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 1 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 0, noresp 0 Firmware version 2.1.0 MAC address f0:08:d1:02:e5:fa Module reset reason: Power up, Vcc 3.42, flash size 2097152, free heap 42944 WiFi IP address 192.168.178.47 Signal strength -35dBm, channel 11, mode 802.11n, reconnections 0 Clock register 00002001 Socket states: 0 0 0 0 0 0 0 0
Mesh.g file:
if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed || !move.axes[3].homed G28 M290 R0 S0 ; cancel baby stepping G29 S2 ; cancel mesh bed compensation T1 ; Switch to Tool with the SZP G90 ; Absolute Positioning G1 Z6 ; to avoid backlash G1 X125 Y169 F99999 ; move to center of bed M558.1 K1 S1.7 G1 Z6 ; Move up at end of calibration G29 S0 K1 ; create height map
Config.g
; Configuration file for Duet 3 Mini 5+ (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.2 on Thu Sep 23 2021 20:24:16 GMT+0200 (Mitteleuropäische Sommerzeit) G4 S1 ;wait for expansion boards to start ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves ;M552 S0 ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0.0 S1 D3 V1500 ; physical drive 0.0 goes backwards M569 P0.1 S0 D3 V1500 ; physical drive 0.1 goes backwards M569 P0.2 S1 D3 V1500 ; physical drive 0.2 goes forwards M569 P20.0 S0 D3 V1500 ; Toolboard 1 physical drive forwards M569 P21.0 S0 D3 V1500 ; Toolboard 2 physical drive forwards M569 P0.3 S1 D3 V1500 ; physical drive 0.3 goes forwards M569 P0.4 S1 D3 V1500 ; physical drive 0.4 goes forwards M584 X0.0 Y0.1 U0.3 Z0.2:0.4 E20.0:21.0 ; set drive mapping M350 X16 Y16 U16 Z16:16 E16:16 I1 ; configure microstepping with interpolation M92 X80.685 Y80.791 U80.685 Z1600:1600 E415.81386:415.81386 ; set steps per mm M566 X300.00 Y300.00 U300.00 Z300.00:300.00 E3600.00:3600.00 ; set maximum instantaneous speed changes (mm/min) M203 X15000.00 Y15000.00 U15000.0 Z500.00:500.00 E3600.00:3600.00 ; set maximum speeds (mm/min) M201 X5000.00 Y5000.00 U5000.00 Z500.00:500.00 E3000.00:3000.00 ; set accelerations (mm/s^2) M906 X700 Y1200 U800 Z900:900 E600:1190 I40 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Stall detection ;M915 X Y U F0 S20 R2 H200 ; Detect stall and Rehome ; Axis Limits M671 X260:260:50:50 Y260:50:50:260 P0.8 ; adjusting screws at rear left (-15,190), front middle (100,-10) and rear right (215,190), thread pitch 0.5mm M208 X-42.8 Y-19 Z-0.54 U0 S1 ; set axis minima M208 X305 Y291 Z360 U348 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io5.in" ; configure active-high endstop for low end on X via pin io6.in M574 Y1 S1 P"!io3.in" ; configure active-high endstop for low end on Y via pin io3.in M574 Z1 S1 P"io4.in+io2.in" ; configure active-high endstop for low end on Z via pin io2.in and io4.in ;M574 Z1 S2 ; configure active-high endstop for low end on Z via Z Probe M574 U2 S1 P"io6.in" ; configure active-high endstop for high end on U via pin io5.in ; Z-Probe M558 K0 P8 C"20.io2.in" H5 F600:70 T10000 A5 S0.01 ; ABL Probe G31 P50 X-38 Y-3.8 Z2.95 ; set the trigger height and Offset ABl probe ; SZP M558 K1 P11 C"100.i2c.ldc1612" F36000 T36000 ; Scanning Probe M308 A"SZP coil" S10 Y"thermistor" P"100.temp0" ; thermistor on coil of Scanning probe G31 K1 Z2 Y-14.6 X38.7 ; define probe 1 offsets and trigger height M558.2 K1 S15 R136381 ; set drive current and reading offset ; Mesh M557 Y10:230 U0:250 P10 ; define mesh grid M376 H10 ; Taper height of 10mm (fade) ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B4138 A"Bed" ; configure sensor 0 as thermistor on pin temp1 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 R0.288 K0.129:0.000 D21.01 E1.35 S1.00 B0 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"20.temp1" Y"pt1000" A"Hotend 0" ; configure sensor 1 as PT1000 on pin temp1 M308 S2 P"21.temp0" Y"pt1000" A"Hotend 1" ; configure sensor 2 as PT1000 on pin temp1 M950 H1 C"20.out0" T1 ; create nozzle heater output on out1 and map it to sensor 0 M950 H2 C"21.out0" T2 ; create nozzle heater output on out1 and map it to sensor 0 M307 H1 R2.848 K0.444:0.079 D6.17 E1.35 S1.00 B0 V24.0 ; disable bang-bang mode for heater and set PWM limit M143 H1 S500 ; set temperature limit for heater 1 to 500C M307 H2 R2.573 K0.496:0.076 D5.73 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit M143 H2 S500 ; set temperature limit for heater 1 to 500C ; Fans M950 F0 C"20.out1" Q110 ; create fan 0 on pin out5 and set its frequency M106 P0 S0 H-1 L0.15 C"TOOL 0 FAN" ; set fan 0 value. Controlled by Gcode M950 F2 C"21.out1" Q110 ; create fan 0 on pin out5 and set its frequency M106 P2 S0 H-1 L0.15 C"TOOL 1 FAN" ; set fan 0 value. Controlled by Gcode M950 F1 C"20.out2" Q250 ; create fan 1 on pin out6 and set its frequency M106 P1 X1 H1 T60 ; set fan 1 value. Thermostatic control is turned on M950 F3 C"21.out2" Q250 ; create fan 1 on pin out6 and set its frequency M106 P3 X1 H2 T60 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F0 ; 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 M563 P1 D1 H2 X3 F2 ; define tool 1 G10 P1 U0.3 Y-0.15 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ;Copy mode Tool M563 P2 D0:1 H1:2 X0:3 F0:2 ; tool 2 uses both extruders and hot end heaters, maps X to both X and U, and uses both print cooling fans G10 P2 X0 Y0 U-152.5 Z0 S0 R0 ; Offsets for Tool 2 M567 P2 E1:1 ; set mix ratio 100% on both extruders M568 P2 S1 ; turn on mixing for tool 2 T0 ; enable Tool0 -> Homing global filament_loaded_t0 ="" ; set global parameter if not present global filament_loaded_t1 ="" ; set global parameter if not present ; Custom settings M591 D1 C"21.io1.in" P3 S1 L25 R70:126 ; Rotating Magnet filament runout sensor M591 D0 C"20.io1.in" P3 S1 L25 R70:126 M575 P1 S1 B57600 ; Panel Due ; Miscellaneous M501 ; load saved parameters from non-volatile memory ;M911 S10 R11 P"M913 X0 Y0 U0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss M950 E0 C"led" U15 ; set Neopixels ;M150 R255 U255 B255 P255 F0 ; Set Neopixel initial Color ;M572 D0 S0.040 ; Pressure Advance M955 P20.0 I05 ; Acclerometer M593 P"ZVD" F57 ; Input Shaping ; Toolboard Macros M950 J1 C"20.button0" M581 P1 T1 S1 M950 J2 C"20.button1" M581 P2 T2 S1 M950 J3 C"21.button0" M581 P3 T3 S1 M950 J4 C"21.button1" M581 P4 T4 S1
Ive noticed that the mesh is off when ive started configuring the probe offsets and mesh size
in the Image Below ive set the Mesh to be larger than the Bed is in the X+ Direction, the Mesh shows its dropping in the Y+ Direction
The Scanning also happens towards the Y Direction instead of X Direction
When running the Mesh Misconfigured with the X axis instead of Y axis the Primary toolhead "Scans" in the X Direction -
RE: Macro for Testing Max Accleration
@jay_s_uk didnt really showed up when searching for it, the pinned macros showed up but they are a bit bulky
-
Macro for Testing Max Accleration
I where looking for a easy method to test how much Accleration i could potentially run on my Printer.
Klipper has that nice macro written by Andrew Ellis that makes it easy to run tests Automated so ive looked into creating something similar to test how far i can push the Accleration at a set speedResulting in the Following Macro
;-------------------Accel Test Macro---------------------------------------------- ;this Macro aims to create random movements at set speed and set Accel ;There is a chance that this macro causes a Rapid Movement towards the Min Axis point the macro takes X0 and Y0 as Origin ;aviable macro parameters: ; S = max speed in mm/min ; I = Max Iterations ; A = Accleration Increment ;move.axes[0] X Axis ;move.axes[1] Y Axis ;move.axes[2] Z Axis ;--------------------Variables--------------------------------------------------- var xmax = floor(move.axes[0].max-5) ; Grab Max Distance in X var ymax = floor(move.axes[1].max-5) ; Grab Max Distance in Y var xmaxspeed = move.axes[0].speed ; Grab Max Speed in X var ymaxspeed = move.axes[1].speed ; Grab max Speed in Y var maxspeed = 0 ; Placeholder for Max speed var maxiterations = 5 ; how often does the Macro gets repeated var maxmoves = 30 ; how many moves are made by the macro var xaccel = move.axes[0].acceleration ; grab XAccel from config var yaccel = move.axes[1].acceleration ; grab YAccel from config var accel_inc = 0 ; increment accleration by this value each iteration ;------------------Functions---------------------------------------------------- set var.maxspeed = var.xmaxspeed > var.ymaxspeed ? var.xmaxspeed:var.ymaxspeed ; get max configured speed for the test if exists(param.S) set var.maxspeed = param.S ; Overwrite Max Speed from Macro parameter if set if exists(param.I) set var.maxiterations = param.I ; Overwrite Iterations from macro parameter if set if exists(param.A) set var.accel_inc = param.A ; Overwrite accel_inc from a macro parameter if set ;------------------Prepare Printer---------------------------------------------- if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed G28 ; Home Axis if not Homes G1 Z20 ; Clear Bed M400 ; Wait for movements to finish ;-----------------Test Gcode---------------------------------------------------- echo "running Accel Test" echo "Max Speed:",var.maxspeed echo "Iterations:", var.maxiterations while true M400 ; Wait for all movements to finish M201 X{var.xaccel} Y{var.yaccel} ; set Accel if iterations = var.maxiterations abort "finished Accel Test" ; Loop until max repats are reached echo "running Iteration", iterations echo "X Accleration", var.xaccel echo "Y Accleration", var.yaccel set var.xaccel = var.xaccel+var.accel_inc ; increment the X axis accleration for the next loop set var.yaccel = var.yaccel+var.accel_inc ; Increment the Y axis accleration for the next loop while true if iterations = var.maxmoves break var xrnd = random(var.xmax) var yrnd = random(var.ymax) G1 F{var.maxspeed} X{var.xrnd} Y{var.yrnd} ; Move X and Y in random directions at set speed M400 echo "restart the Mainboard or Reload the Config file again to reset Accleration to its original value" M2
This Macro takes the machine limits in X and Y (expecting Home to be at the Min point)
and then puts random movements within the Machine Limit at the set speed and Accleration
by default it doesnt increase the Accleration with each Iteration but can be configured to do so with a Parameter attached to the Macro Callits not perfect but gave me useable results
might be helpful for others so i post it here.Something to consider because of the Random Movements is that its not 100% repeatable but should give more realistic results due to being closer to actual print movements
-
RE: unexpected Behavior on Duet 1LC Toolboard with Microprobe
@dc42 nothing, would guess that the probe draws to much for the 5v rail to actuate the pin.
I take the L on this one and look for a different solution for replacing the BL touch.
-
RE: unexpected Behavior on Duet 1LC Toolboard with Microprobe
@dc42 powering up the system, cant command a self test manually, wont get executed after the initial selftest
-
RE: unexpected Behavior on Duet 1LC Toolboard with Microprobe
@dc42 Here is the Readout of the Affected Toolboard
M122 B20 Diagnostics for board 20: Duet TOOL1LC rev 1.1 or later firmware version 3.4.6 (2023-07-21 14:17:33) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) All averaging filters OK Never used RAM 2984, free system stack 88 words Tasks: Move(notifyWait,0.0%,155) HEAT(notifyWait,0.1%,115) CanAsync(notifyWait,0.0%,65) CanRecv(notifyWait,0.0%,76) CanClock(notifyWait,0.0%,65) ACCEL(notifyWait,0.0%,61) TMC(notifyWait,3.0%,57) MAIN(running,92.0%,441) IDLE(ready,0.0%,26) AIN(delaying,4.9%,142), total 100.0% Last reset 00:00:26 ago, cause: power up Last software reset data not available Driver 0: pos 0, 80.0 steps/mm,standstill, SG min 0, read errors 0, write errors 0, ifcnt 9, reads 13293, writes 9, timeouts 0, DMA errors 0, CC errors 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter 0/8, peak Rx sync delay 202, resyncs 0/0, no step interrupt scheduled VIN voltage: min 24.5, current 24.5, max 24.6 MCU temperature: min 17.2C, current 20.8C, max 20.8C Last sensors broadcast 0x00000000 found 0 135 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 234, send timeouts 0, received 353, lost 0, free buffers 37, min 37, error reg 0 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 Accelerometer: LIS3DH, status: 00 I2C bus errors 0, naks 3, other errors 0
-
RE: unexpected Behavior on Duet 1LC Toolboard with Microprobe
the Silkscreen Print on the Probe itself matches what the Usermanual and the page from treamgloomy shows
-
RE: unexpected Behavior on Duet 1LC Toolboard with Microprobe
ive used the teamgloomy page for reference, and to verify the correct order of colors.
https://teamgloomy.github.io/fly_e3_v2_bltouch.html
did compared the Original Harness for the BL Touch with the one for the Microprobe and both have the colors in the same order -
RE: unexpected Behavior on Duet 1LC Toolboard with Microprobe
will provide the other stuff shortly.
but i dont think its wiring related. Connecting a BL Touch with the same wires doesnt cause this issue.
the pinout of both probes is the same, ran the BL Touch for over a year on the Toolboard with no issues.Here is a picture of the Crimps on the Connector facing the Toolboard, other side is facory Crimped.
-
unexpected Behavior on Duet 1LC Toolboard with Microprobe
Good Day,
I want to replace a BL Touch on one of my Printer with a Biqu Microprobe due to the smaller formfactor giving me a more favorable probe placement.
With the BL Touch connected everything is fine, connecting the Microprobe causes the Connected Thermistor to get lost, causing the hotend to go into a Error state.
The Printer where running with the BL Touch now for a few months in this ConfigurationThe printer is running as a Idex equiped with:
Duet 3 Mini5+
2 1LC Toolboards
2 Mosquito Magnum each running a PT1000
2 BMG-M Extruder
2 Roatating Magnet Filament Monitors
Running on 3.4.6Changed the config from the Working BL Touch settings to:
; Z-Probe M558 P9 C"^!20.io0.in" H7 F250:30 T8000 A20 R0.75 S0.01 ; BL Touch M950 P0 C"20.io0.out" ; BL Touch Servo Pin G31 P25 X-38 Y-3.8 Z2.12 ; set the trigger height and Offset BL Touch 2.55 M557 X5:220 Y-17:220 S50 ; define mesh grid M376 H10 ; Taper height of 10mm (fade)
Deployprobe.g and Retractprobe.g got configured to support the new probe
M42 P0 S1 G4 P500
The Behavior i get with a BLTouch connected:
- Powering on the printer works
- Self Test of the Probe works
- Printer goes to Idle
- Pin Deploys when configuration is adjusted for the probe
The behavior with the Microprobe connected:
- Powering on the printer works
- Self Test of the probe Works
- after a second or two the Hotend Cooling fan of the Tool where the probe is connected to turns on
- the Thermistor reports 2000°C
- Pin of the Probe doesnt get Deployed when sending a macro containing
M42 P0 S1 ; Turn on pin so it deploys G4 P500
ive tried to see if the cable is the issue, but swapping in the BL Touch on the same cable doesnt cause the issue.
The pinout of both probes is also the same