@gloomyandy Thanks, you're right, I was trying to use M671 incorrectly I think.
It is probably easiest to just write a macro for this and use that with the bed-level screw positions I've got.
-N
@gloomyandy Thanks, you're right, I was trying to use M671 incorrectly I think.
It is probably easiest to just write a macro for this and use that with the bed-level screw positions I've got.
-N
Thanks, had a look at M671 and it should've been obvious that there is a 4-point limitation.
For some reason, I thought I had it working on my long print bed before as a bed-leveling screw array versus a more modern pivot point definition. if that makes sense.
-N
Hi,
Previously I had a manual bed level array that had 10 positions for the Y Axis bed leveling screws (code below is now
M671 X75:450:825 Y0:320:635:950:1265:1585:1950:2250 P0.5
And running 3.5.0-rc3 I now get an error that says that the M671 array is too long. Is there something I'm overlooking in another setting?
For some reason, I don't have a bed.g file anymore either.
Thanks,
Nate
@OwenD Amazing thanks very much
@OwenD Thanks, that can be run like the M106 command in the macro?
Re: Creating a timed fan Marco and Meta
Hi,
Following on this topic, I've got a similar large format Cartesian printer with a 6HC main board and 3HC expansion boards which I've equipped with a small (M5Stack) dc motor to periodically vibrate for a second to make sure pellets are not binding in the feed passage.
I've got the DC motor connected to the IO_1 of my 3rd 3HC and it runs (constantly, I know this is on 100%, this is just for testing) with this in my config.g -
; Pellet Shaker
M950 P1 C"3.io1.out" Q450 ; create output/servo
M42 P1 S1 ; set 100% PWM on GPIO port 1
What I thought I could do is modify the code that @infiniteloop and @OwenD helped @kmoore for his pellet feed-
; filamentmonitor.g
; Check filament progress, feed pellets if needed
if job.file.fileName == null
M99
if {{global.filamentProgress + 11500.0} <= move.extruders[0].position} ;
set global.filamentProgress = {move.extruders[0].position + 11500.0}
M106 P0 S255
G4 S3
M106 P0 S0
But in my case, I'd like to switch on a fan connection on the 6HC using the M106 command and pulse the pellets a bit.
Is there a way of adding control over the DC motor connected to the IO_1 pins within that macro?
Thanks very much, Nate
Thanks @droftarts
I'm guessing it's an uncommon setup as you say, in this case it's two expansion boards each with a Y motor and a Z motor and a corresponding endstop.
Ola everyone,
I've got a question about using expansion boards and M574 Axis levelling using endstops.
My machine uses one 6HC main board and three 3HC expansion boards, ideally two Z endstops (lower limit) and two Y endstops attached to two of the three 3HC expansion boards.
; Drives
;Y Lower Left
M569 P1.0 S0 ; physical drive 1.0 goes (right Y motor) forwards Y1
;Y Lower Right
M569 P2.1 S1 ; physical drive 2.1 goes (left Y motor) forwards Y2
;Y Upper Left
M569 P1.1 S1
;Y Upper Right
M569 P2.0 S0
;Z Left
M569 P1.2 S1 ; physical drive 1.2 (right) goes forwards Z1
;Z Right
M569 P2.2 S1 ; physical drive 2.2 (left) goes forwards Z1
;M569 P0.4 S0 ; physical drive 0.2 goes forwards U
;X
M569 P3.0 S0 ; physical drive 3.0 goes forwards X1
Is my Drives code and -
; Endstops
M574 X1 S1 P"!3.io0.in" ; configure active-high endstop for low end on X via pin 1.io0.in
M574 Y1 S1 P"!io0.in" ; configure active-high endstop for low end on Y via pin io0.in
M574 Z1 S1 P"!1.io0.in"
;M574 Z1 S1 P"!1.io0.in+!2.io0.in" ; configure active-high endstops for low end on Z via pins zstop and e1stop
;M574 Z1 S1 P"!2.io0.in" ; configure Z active-high endstop for low end pin 1.io1.in
Is my Endstops code.
At the moment I've got the axis levelling line inactive because I'm unable to get this working and wanted to see if the endstops need to be connected to the main board (or the same expansion?) or do both the drives and the associated endstops need to be connected to the same board (all on one expansion or all on the main board)
Thanks
Nate
Hi,
Checking back in to see if anyone has any advice on how best to adjust the M307 code.
Previous to 3.0 I think it heated well with no issue and the new heater algo means that it really struggles to both Autotune and reach 70-75 degrees
M308 S0 P"temp0" Y"pt1000" A"bed Heat1" ; configure sensor 0 as thermistor on pin temp0 T100000 B4725
M950 H0 C"out1" T0 ; create bed heater output on out0 and map it to sensor 0
;M301 H0 P-10 I0.2 D50 T0.3
M307 H0 R0.051 K0.098:0.000 D32.76 E1.35 S1.00 B0
; old M307 H0 R0.066 K0.191:0.000 D45.54 E1.35 S1.00 B0 ;M307 H0 R0.076 K0.292:0.000 D42.95 E1.35 S1.00 B0 ;M307 H0 R0.070 K0.416:0.000 D62.44 E1.35 S1.00 B0 ; disable bang-bang mode for the bed heater and set PWM limit
M140 P0 H0 ; map heated bed 0 to heater 0
M143 H0 S90 ; set temperature limit for heater 0 to 90C
That's the current setting for one of three heat beds.
Thanks in advance,
Nate
@nxt-1 getting the similar errors via windows
"2022/06/21 14:23:53 Error while downloading rr_status: Too many errors, resetting counters and stoping track operation. Will hide consequent errors..."
Any chance there's a fix for this @Torin ?
Thanks,
Nate