
t0bias
@t0bias
Best posts made by t0bias
Latest posts made by t0bias
-
RE: Macro: Execute python script on Rpi
As far as I am aware, it can only do G-Code since it's basically just a list of G-Code commands executed in sequence.
Two more ideas which, however, are probably still not exactly what you are looking for:
-
Use a minimal Microcontroller powered off the Duet like an Arduino or even better a Bare Microcontroller with a WiFi Shield or something like that to monitor a Level-change on some pin and send out a notification to your Pi
-
Use a Serial/UART to WiFi Bridge and read the serial data from the Duet using the Pi.
Let me know if you find some other solution to your question, I'd be very interested in hearing about it..!
-
-
RE: Monitor what True Bed Levelling is doing?
@Veti thanks.
I do understand the meaning of the error; but that's what I am saying - there is no way, there is over 2mm of height difference. And before I changed the probing positions, that error never showed up..
-
RE: Monitor what True Bed Levelling is doing?
I adjusted that very line in my config.g to this:
M671 X-49:333 Y140:140 S0.75 ; define the two Z leadscrew positions (right: -49/140, left:333/140) and max correction of 0.75
But now even weirder I get the following error:
G32 Error: Some computed corrections exceed configured limit of 0.75mm: -2.095 -0.356
And even I don't exactly know the height-difference; I can absolutely guarantee there is by no means a difference of two millimeters? And why are there two values anyway?
-
RE: Monitor what True Bed Levelling is doing?
@fcwilt good point! I used the probing-point coordinates for the leadscrews as well by mistake..
-
RE: Monitor what True Bed Levelling is doing?
I already tried that without success unfortunately!
-
RE: Monitor what True Bed Levelling is doing?
Seasons greetings, everyone!
Ok, so my bed.g now looks like this:
G28 ; home all G1 Z5.25 ; lower bed a bit G1 X162.85 Y174.15 ; move to center point G30 S-2 ; adjust Z G30 P0 X34.6 Y174.15 Z-99999 ; probe near right Z motor leadscrew G30 P1 X291.1 Y174.15 Z-99999 S2 ; probe near left Z motor leadscrew G1 X162.85 Y174.15 Z5.25 ; move to center point (again) G30 S-2 ; re-adjust Z G28 XY ; home X and Y
However, now I always get the error
G32 Error: Probe points P0 to P1 must be in clockwise order starting near minimum X and Y
-
RE: Monitor what True Bed Levelling is doing?
Thanks for clearifying, Frederick and Phaedrux!
I really think I got confused about the different techniques there..
Ok, so what I am trying do accomplish is to have my printer automatically level the bed as far as possible.
My printer has two independent Z-motors to lift the bed, one on each side.
Homing is done using two independent Z-limit-switches (mounted close to the corresponding motor leadscrew), and both switches still allow for about 1mm of moving further up (at least physically), once they trigger.In order to get the bed as level as possible, slightly offset to the nozzle a ir-probe is mounted and should be used for the fine-tuning, I guess.
The complete config.g of mine:
; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"My 3D Printer" ; set printer name M669 K1 X1:0:0 Y0:1:0 Z0:0:1 ; set CoreXY mode ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S1 R0 ; physical drive 0 is disabled (R0) M569 P1 S1 R0 ; physical drive 1 is disabled (R0) M569 P2 S1 R0 ; physical drive 2 is disabled (R0) M569 P3 S1 ; physical drive 3 goes forwards (E0) M569 P4 S0 ; physical drive 4 goes backwards (E1) M569 P5 S1 R1 T5.05:5.05:0.5:0.5 ; physical drive 5 goes forwards (E2 on Expansion Header, X) M569 P6 S1 R1 T5.05:5.05:0.5:0.5 ; physical drive 6 goes forwards (E3 on Expansion Header, Y-Left) M569 P7 S0 R1 T5.05:5.05:0.5:0.5 ; physical drive 7 goes backwards (E4 on Expansion Header, Y-Right) M569 P8 S1 R1 T5.05:5.05:0.5:0.5 ; physical drive 8 goes forwards (E5 on Expansion Header, Z-Left) M569 P9 S1 R1 T5.05:5.05:0.5:0.5 ; physical drive 9 goes forwards (E6 on Expansion Header, Z-Right) M584 X5 Y6:7 Z8:9 E3:4 ; set drive mapping M350 X16 Y16 Z16 E16 I0 ; configure microstepping with interpolation M92 X855.00 Y420.00 Z6316.00 E837.00 ; set steps per mm (X = 20T, Y = 60T, Z = M8:1.25) M566 X600.00 Y300.00 Z50.00 E820.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z1500.00 E1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z1000.00 E250.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 E1000 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 X284 Y333 Z370 S0 ; set axis maxima ; Endstops M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop M574 Y1 S1 P"ystop+exp.e2stop" ; configure active-high endstop for low end on Y via pin ystop / exp.e2stop M574 Z1 S1 P"zstop+exp.e3stop" ; configure active-high endstop for low end on Z via pin zstop / exp.e3stop ; Opposite Side Limit Switches M950 J1 C"^exp.e4stop" ; create input J1 on pin exp.e4stop M581 P1 S0 T3 C0 ; configure active-high X/Y/Z-Axis Upper Limit switch (S0 = falling edge) ; Magnetic Filament Monitor M591 D0 P4 C"exp.e5stop" S1 A0 ; configure Filament monitoring for E0 on pin exp.e5stop M591 D1 P4 C"exp.e6stop" S1 A0 ; configure Filament monitoring for E1 on pin exp.e6stop ; Z-Probe M558 P1 C"zprobe.in+zprobe.mod" H5 F120 T3000 ; set Z probe type to modulated and the dive height + speeds G31 P400 X21.6 Y34.15 Z1.83 ; set Z probe trigger value, offset and trigger height M557 X45:301 Y35:336 S30 ; define mesh grid ; Dual Z-Motor bed levelling M671 X34.6:291.1 Y:174.15:174.15 S0.75 ; define the two Z leadscrew test-positions (right: 13/140, left:269.5/140) and max correction of 0.75 ; Heaters M308 S0 P"bedtemp" Y"thermistor" A"Heated-Bed" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S145 ; set temperature limit for heater 0 to 145C M308 S1 P"e0temp" Y"pt1000" A"E0-Temperature" ; configure sensor 1 as PT1000 on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S360 ; set temperature limit for heater 1 to 360C M308 S2 P"e1temp" Y"pt1000" A"E1-Temperature" ; configure sensor 2 as PT1000 on pin e1temp M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2 M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H2 S360 ; set temperature limit for heater 2 to 360C ; Additional Temperature Sensors M308 S3 P"exp.thermistor3" Y"thermistor" A"X-Motor" T100000 B4138 ; configure sensor 3 as thermistor on pin exp.thermistor3 M308 S4 P"exp.thermistor4" Y"thermistor" A"Y-Motor (Right)" T100000 B4138 ; configure sensor 4 as thermistor on pin exp.thermistor4 M308 S5 P"exp.thermistor5" Y"thermistor" A"Y-Motor (Left)" T100000 B4138 ; configure sensor 5 as thermistor on pin exp.thermistor5 M308 S6 P"exp.thermistor6" Y"thermistor" A"Z-Motor (Right)" T100000 B4138 ; configure sensor 6 as thermistor on pin exp.thermistor6 M308 S7 P"exp.thermistor7" Y"thermistor" A"Z-Motor (Left)" T100000 B4138 ; configure sensor 7 as thermistor on pin exp.thermistor7 ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S1 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H-1 ; set fan 1 value. Thermostatic control is turned off ; Tools M563 P0 S"Main Extruder" 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 S"Support Extruder" D1 H2 F1 ; define tool 1 G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C M200 D1.75 ; set filament diameter for all extruders to 1.75mm ; Miscellaneous M575 P1 S1 B57600 ; enable support for PanelDue T0 ; select first tool ; Heater settings M307 H0 A143.3 C694.4 D1.3 B0 ; PID settings for bed heate M307 H1 A390.2 C250.5 D11.7 B0 ; settings for heater 1 M307 H2 A663.8 C218.7 D4.7 B0 ; settings for heater 2
-
RE: Monitor what True Bed Levelling is doing?
I see, thanks Frederick.
I got confused by the deprecated-message when using the Mesh bed compensation, I guess.
So the question would then rather be: "Is there a way to monitor mesh bed compensation?"
-
RE: Macro: Execute python script on Rpi
In case you cannot physically connect the Rpi to the Duet for whatever reason you could use something like this https://coptonix.com/products/lan-i2c-adapter-ms/
and send a I2C-request from the Duet to the Pi via Ethernet. -
RE: Macro: Execute python script on Rpi
This is how I have done it:
- Connect any unused Output of the Duet with one of the GPIOs of your Pi alongside with a GND connection (optionally use a opto-coupler for the GPIO connection for power isolation).
- Use a Macro on the Duet using the M42 command to switch the pin on the Duet-side high/low.
- Watch the GPIO-pin from within your python script for change.