-
OK, this is a bit amusing since I just purchased a workbee, have a duet wifi spare and a bunch of time. While waiting on it to show up here i'm spending some time creating a post processor for Bobcad/cam that'll work with the duet. Shouldn't be too terrible to make it work right.
-
@abbott_m I made one for CamBam. Actually two of them as firmware versions prior to 2.0 were not 100% compatible with GCode standards (proper or de facto ones). So if you go for firmware 2.0 you just need to avoid some GCodes that are not supported for now - like G17, G18, G19 (I have actually removed only G17 as it is safe considering that the Duet3D works only on the XY plane for now, but I left the others in place so I get an error if I configure anything wrong during CAM).
Which WorkBee have you chosen? Belt or lead screw?
-
By using latest firmware at the time of writing this, that is 2.01beta2, the maximum jerk can be safely increased to 400mm/min. Also the G2/G3 behavior, visible especially during some trochoidal machining paths as generated by CamBam, is fixed. Based on more tests that have to be done, the maximum jerk could be further increased.
-
@catalin_ro
That's interesting. Any updates?
-What kind of stepper motors are you using, Nema 23?
-Hows the duet stepper motor drivers handling the nema motors torque? -
@cncpro
Not much! The WorkBee is now changed to an 800W air cooled spindle bought on AliExpress and I have also added a 4th Axis that I install only when needed.The steppers are NEMA 23 rated for 3A, 345oz*in. They are way stronger than what the WorkBee would need.
The 3A steppers are handled very well by the Duet drivers when using a 24V PSU, much better than the GRBL+DRV8825 combo I have initially used (left over from previous CNC, until the Duet had enough CNC capabilities!). Using some higher voltage capable drivers might help getting higher RPMs but the lead screws are normally limited around 300RPM to avoid melting the Delrin nuts. With the OpenBuilds "standard" lead screws that gives 2500mm/s. For my needs that is quite enough, though I consider some times beefing up the mechanics a little bit (at 8mm thickness the lead screws a little wobbly) - but I need to find enough spare time for finding a solution.
-
@dc42 can you post current post processors on this page?
-
@adamfilip I don't know if David has any CNC mill post processor for the Duet. All I can help you with is the CamBam 1.0 one. I have used it extensively and it is working very well with firmware 2.0 and newer. As I can't upload the file (it's name is Duet3D v2.0.cbpp), here is its content:
<?xml version="1.0" encoding="utf-8"?>
<PostProcessor xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="0.9.8.0">
<ToolChange />
<CutterCompOff />
<WorkplaneXY />
<VelocityModeExactStop />
<VelocityModeConstantVelocity />
<EndRewind />
<Repeat />
<SpindleCW>M3 {$s} G4 S30</SpindleCW>
<SpindleOff>G4 P0 M5</SpindleOff>
<RotaryAxis>B</RotaryAxis>
</PostProcessor> -
I asked Ryan from Ooznest about the post processor they use for Duet and they said they just use standard GRBL
-
It may be of interest that RRF 2.02RC7 supports Fanuc-style GCode in the sense that where you have a sequence multiple G0, G1, G2 or G3 commands, after the first line the subsequent lines can just specify the new coordinates (and feed rate if necessary), omitting the G command.
-
@adamfilip GRBL might work as post processor with the latest firmware, I admit! 8 months ago that was not possible and I have added the dedicated CamBam post processor because of that.
-
With the latest rc7 firmware, fanuc postprocessor should work, I'll make a powermill post and post it here once it's done. It should be pretty easy now. It'll work with featurecam and artcam too.
If you looked for it, any cam should include a fanuc post. -
@dc42 I am currently running the latest firmware on duet wifi but I am getting a bad command error on the line with no G command when running a GCode file. I don't know if I am missing something.
For example:
G1 X100 Y100 F2000
X200 Y200
G1 X0 Y0The gantry moves to X100 and Y100 then back to 0 only
-
@moameen said in OOZNest WorkBee, screw driven:
@dc42 I am currently running the latest firmware on duet wifi but I am getting a bad command error on the line with no G command when running a GCode file. I don't know if I am missing something.
For example:
G1 X100 Y100 F2000
X200 Y200
G1 X0 Y0The gantry moves to X100 and Y100 then back to 0 only
You need to put G1 in front of the X200 Y200
-
@moameen said in OOZNest WorkBee, screw driven:
@dc42 I am currently running the latest firmware on duet wifi but I am getting a bad command error on the line with no G command when running a GCode file. I don't know if I am missing something.
For example:
G1 X100 Y100 F2000
X200 Y200
G1 X0 Y0The gantry moves to X100 and Y100 then back to 0 only
Have you set the machine mode to CNC, using M453 ?
-
I do not have a spindle hooked up to the duet. So if I use the M453 code on its own the GCode works correctly, but if I add the P and R parameter to the M453 it does not. The bad error command pops up. I am running an MPCNC and this is my config. Maybe there is some conflicting commands.
; General preferences
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P2 ; Set firmware compatibility to look like Marlin
; Automatic saving after power loss is not enabled
M564 H0 ; Allow axis movement prior to homing
M584 X0:4 Y1:3 Z2 A3:1 B4:0 ; Axis mapping
M208 X0 Y0 A0 B0 Z-80 S1 ; Set axis minima
M208 X650 Y650 A650 B650 Z5 S0 ; Set axis maxima
M453 P1 R5000; Endstops
M574 X1 Y1 A1 B1 S1 ; Set endstops controlled by switch; Drives
M569 P0 S0 ; Drive 0 goes backwards X
M569 P1 S0 ; Drive 1 goes backwards Y
M569 P2 S1 ; Drive 2 goes forwards Z
M569 P3 S1 ; Drive 3 goes forwards A
M569 P4 S1 ; Drive 3 goes forwards B
M350 X16 Y16 Z16 A16 B16 I0 ; Configure microstepping without interpolation
M92 X80 Y80 Z400 A80 B80 ; Set steps per mm
M566 X400 Y400 Z100 A400 B400 ; Set maximum instantaneous speed changes (mm/min)
M203 X10000 Y10000 Z600 A10000 B10000 ; Set maximum speeds (mm/min)
M201 X900 Y900 Z300 A900 B900 ; Set accelerations (mm/s^2)
M906 X800 Y800 Z800 A800 B800 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Heaters
;M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
;M305 P0 T10000 B3988 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; Tools
;M563 P0 D-0 H-1 ; Define tool 0
;M563 P1 D-1; 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 -
@deckingman Have a look at @dc42's previous post on omitting the G1 command, It was implemented in RRF 2.02RC7 release
-
@moameen said in OOZNest WorkBee, screw driven:
@deckingman Have a look at @dc42's previous post on omitting the G1 command, It was implemented in RRF 2.02RC7 release
Yes thank you. I missed the fact that this was a CNC related question. Apologies.
Edit (but you could try my suggestion because if it improves things then that information might be useful in diagnosing the problem).
-
@moameen, my guess is that the M453 command is failing because of a bad S or P parameter on that command. You can check which mode the machine is in by sending M450. You can also try sending the same M453 command from the GCode console that you have in config.g and see if you get an error message. One possible reason is that you have chosen a pin that is normally used as a heater to control the spindle, but you haven't first made it free by disabling the associated heater using M307.
-
@moameen Please re-check your axis mapping (M584)! I would strongly suggest that you start with my config.g example and modify it as needed.
Also it is important to differentiate between single homing switch on just one of the Y-axis or separate homing switches on the two Y-axis. What is your actual setup?
More important... how large is your WorkBee and is it screw or belt version?
-
@dc42 I have made the changes and disabled the heaters but i am still having the same problem. when I send the M453 command via web interface, a bad P parameter error is coming up.
; General preferences
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P2 ; Set firmware compatibility to look like Marlin
M140 H-0 ; Disable bed heater
M307 A-1 C-1 D-1 ; Disable E0 heater
M307 A-2 C-2 D-2 ; Disable E1 heater
;M563 P0 D-0 H-1 ; Disable P(Tool 0) D(E drive 0) H(heater 1)
;M563 P1 D-1 H-2
M564 H0 ; Allow axis movement prior to homing
M584 X0:4 Y1:3 Z2 A3:1 B4:0 ; Axis mapping
M208 X0 Y0 A0 B0 Z-80 S1 ; Set axis minima
M208 X650 Y650 A650 B650 Z40 S0 ; Set axis maxima
M453 P1 R24000 ; CNC mode using E0 heater pin (P1)