Welcome to Our Community

Some features disabled for guests. Register Today.

Workbee with Duet controller macro changes

Discussion in 'Control Software' started by Alex Chambers, May 14, 2019.

  1. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    1,472
    Likes Received:
    675
    The Duet controller supplied with the workbee by Ooznest in the UK has some downsides and some upsides. On the downside the G-code dialect it uses is a bit non-standard - it even has a few differences from the specifications in the Duet G-code wiki (G54 for machine co-ordinates)
    On the upside Ooznest have provided a suite of macros for some common functions but I discovered (the hard way) that they need to be used with caution. There are macros for;

    Homeall, Homex, HomeY and HomeZ
    Pause (job) and Resume

    The homing macros take no account of any fixtures on the machine bed, and homeall puts the X and Y moves on the same line so will go to the home position by the most direct route. Pause calls the homeall macro. Resume likewise will return to the point where the job was paused by the most direct route.
    I have modified homex, homey, pause and resume to allow jogging to a safe position before invoking the rest of the macro. I didn't bother with homez because straight up doesn't cause a problem and I could not modify the homeall macro because I have disabled "allow moves without homing" on my machine (because it effectively disables soft limits) and if I tried to jog one axis at a time the machine informed me that I had insufficient axes homed to allow this. I changed the pause macro to call my modified homey and homex macros rather than homeall so that I could allow jogging moves to a safe place before running the rest of the macro.

    One upside of the Duet G-code dialect is that it has a very useful message box with switches to allow various degrees of user response and the option of displaying jog controls.
    M291 P "message" R "Title" S(0,1,2,3) (X1, Y1, Z1) see Gcode
    S=switch S3 give an OK box and a cancel box. X1 etc displays jog controls.

    If anyone wants to make use of these macros - feel free, but, although I have tested them, you do so at your own risk - no warranties express or implied:p:p
    Alex.
    And just to stress the point - they won't work on standard grbl without changes.
     

    Attached Files:

    • homex.g
      File size:
      597 bytes
      Views:
      20
    • homey.g
      File size:
      597 bytes
      Views:
      9
    • pause.g
      File size:
      114 bytes
      Views:
      9
    • resume.g
      File size:
      397 bytes
      Views:
      9
    #1 Alex Chambers, May 14, 2019
    Last edited: May 14, 2019
    Colin Mccourt and sharmstr like this.
  2. Colin Mccourt

    Colin Mccourt Journeyman
    Builder

    Joined:
    Jan 23, 2019
    Messages:
    354
    Likes Received:
    180
    Whilst I don't wish to mess around with the G-Code side of things as everything is performing as it should for me bar a few little irksome facets which I can live with for now. Having said that at some point I know I'll have to delve into this murky world. So I have saved all of the above modifications @Alex Chambers in a folder for future tinkerings.
    Regards
    C
     
  3. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    1,472
    Likes Received:
    675
    Colin Mccourt and GrayUK like this.
  4. Donald Oehlke

    Builder

    Joined:
    Apr 8, 2019
    Messages:
    12
    Likes Received:
    1

    I also have a Workbee I purchased from Ooznest. The board that came with it was the Duet3d WiFi. I had Ryan at Ooznest set it up for me via teamviewer. Everything worked well for awhile until it kept crashing. I contacted Ooznest and they said it shouldn't be crashing but they couldn't figure out why. They eventually refunded me the cost of the board and I looked at other programs to get my machine running. After trying several and not understanding how to get them to work I decided to purchase another Duet3D WiFi board. I purchased a new board from Filaster and asked if they had support and could help me get it setup. After I received the board, I called and asked them to help me setup the new board. They said they couldn't do it because they didn't know about the Workbee and also refused a return. I contacted Ryan at Ooznest to maybe have them set it up for me but they said they only support the initial board sent with the machine. Now I have a board that is intalled and I have the control panel but it doesn't have the homey, homex and homez in the system config file. I have been unable to get the machine to run or even move. I am a novice when it comes to setting this up so I am looking to the experts to maybe help me out. I am not sure what to do next short of selling the machine. So if anyone is interested in that, i would sell unless I can get it running. Would rather get it running.
     
  5. Giarc

    Giarc Master
    Moderator Builder

    Joined:
    Jan 24, 2015
    Messages:
    1,660
    Likes Received:
    864
    Have you tried the suggestions from the Duet forum where someone (maybe you??) asked the same thing? :
     
  6. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    1,472
    Likes Received:
    675
    @Donald Oehlke, this thread is specifically about using macros with the Duet controller. Could you please ask your question in the CNC Mills/Routers section?

    CNC Mills/Routers

    Thanks, Alex.
     
  7. Wayne Elmore

    Builder

    Joined:
    May 8, 2020
    Messages:
    6
    Likes Received:
    2
    Glad I found this Alex, I emailed ooznest earlier asking about the pause job thing. This might be just what I'm looking for.

    Would I need to save/copy/rename any of the original files on the duet before adding these?

    I'm basically looking to change the pause location to somewhere other than back right
     
  8. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    1,472
    Likes Received:
    675
    These are out of date - they go back to the days when Ooznest used G54 as a bodge for machine co-ordinates (should be G53)
    Tell me what it is that you want to do.
    Alex.
     
  9. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    1,472
    Likes Received:
    675
    Two things that you can do - I've changed the pause.g file to call homez.g instead of homeall.g. If you want to move to a specific location create your own macro using G53 (machine co-ordinates) G0 (rapid move) Zn (where n is a safe height. Second line :- G53 G0 Xn Yn. G53 is not modal which means it only applies to the line of code it is on.
    Pause.g should only really be used if something is going wrong. If you want to inset pauses into your g-code you will need to modify your post processor - fairly straightforward for the Fusion 360 post processor, haven't really tried it with the Vectric ones.
    Alex.
     
  10. Wayne Elmore

    Builder

    Joined:
    May 8, 2020
    Messages:
    6
    Likes Received:
    2
    So basically I would like to home Z and then probably home y but not x , i have a dust shoe and i made it a bit big and it would foul the x gantry plate. I do plan on re hashing it but in the meantime i dont want machine to go to back right corner.

    going forward id like to learn how to send where i want it to go on pause. I tend to use front half of machine at the moment while im learning, to be fair a pause to centre of machine or slightly farther back would be great
     
  11. Wayne Elmore

    Builder

    Joined:
    May 8, 2020
    Messages:
    6
    Likes Received:
    2
    I just re read the post above, that makes sense, things do go wrong at the moment, sometimes I need to cancel or pause a job, and both home the machine, but with this shoe, i want a temporary solution to not home ( i realise when i start machine I need to home and will have to remove dust shoe.this is only temporary while i modify shoe. I'm also trying to master 3d printing :)
     
  12. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    1,472
    Likes Received:
    675
    Then you need to reduce the maximum travel on your X axis - move the X axis limit switch in enough to stop the dust shoe hitting that side. Copy the M208 line from config.g that sets the axis maxima and paste it into customconfig.g - reduce the value for X by TWICE the distance that you moved the limit switch. Re-start your Duet to make the changes have an effect. You don't have to, but it is good practice to change the value for X in homeall.g and homex.g.
    Alex.
     
  13. Wayne Elmore

    Builder

    Joined:
    May 8, 2020
    Messages:
    6
    Likes Received:
    2
    excellent ill do that cheers Alex
     
    Alex Chambers likes this.

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice