Welcome to Our Community

Some features disabled for guests. Register Today.

Noob with some questions/issues with Openbuilds Control

Discussion in 'Control Software' started by Matt Petersen, Aug 2, 2023.

  1. Matt Petersen

    Builder

    Joined:
    Aug 2, 2023
    Messages:
    25
    Likes Received:
    5
    Hi all, love Openbuilds, awesome software.

    I have built a CNC plasma cutter based on a JD's Garage setup. Running Nema 23 motors with an MKS DLC32 control board on 12v. DM556 drivers with a 36V power supply.

    I plan to run home position limit switches but they aren't installed yet. Y axis travel is about 1020, X axis 620, and Z 75.

    Board is running Grbl 1.1h and the firmware it shipped with and the latest version of Control on a Windows 10 Dell Latitude 7450.

    I have calibrated the direction, steps per mm and the travel speed and can move all 3 axis around no problems but have a few questions/issues I hope I can get some help with.

    1) Can the jog speed be changed? The travel speed only seems to apply to when it moves to a preset position. The jog speed seems a little slow.
    2) When I enable soft limits the machine halts with a travel limit error saying max travel exceeded. Doesn't matter if I try to move 1mm or 100mm and applies to all axis.
    3) If I set a preset position (G28 I think) then home the machine and go to the preset there are no issues. When I home the machine and then power off the machine and back on again then the Y axis preset seems to get screwed and it runs to the end of the travel and crashes (soft limits not working). Can reset the position and save it again and it works fine till next power off. The value displayed on the Y axis is so big that it doesn't fit in the field correctly.
    4) Sometimes when I change a Grbl setting and restart Grbl as prompted the config page doesn't appear to reload the config values and display them, I can switch to the jog page and back again and they are all there. Appears to happen about 1 in 4 times but is random.
    5) I have tried the firmware flash tool and selected Blackbox 4x as recommended by others but I get a flash failed. Research shows people flashing the firmware on other utilities with no issues, I haven't tried that yet.
    6) Periodically on connecting to the machine I will get a value unknown error pop up during the connection. Doesn't say what value and doesn't happen consistently.

    I have factory reset the settings and the firmware and manually reconfigured everything and can repeat the above. I have also uninstalled Control and reinstalled and reconfigured and same issues.

    Thanks in advance for any help.

    Cheers
    Matt
     
  2. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    2,769
    Likes Received:
    1,357
    Matt Petersen likes this.
  3. David the swarfer

    David the swarfer OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 6, 2013
    Messages:
    3,430
    Likes Received:
    1,907
    soft limtis will give you fits, turn it off (-:
    always home after power cycle or reset.
    you can check the offsets by issuing a $# at the serial console, it will reply with all the offsets so you can see what the actual numbers are before you try your power cycle thing.

    note that both G28/G28 and G55-G59 are all coordinate system that are offsets from home, with out a home cycle you will never get the correct position.
    dont do that, you dont have a blackbox!
    again, no surprise there, you dont have a blackbox, CONTROL is tuned for the Blackbox 4x and X32, though your MKS board is running GRBL we don't yet know exactly which version it is.
    AND if it is not the version one can download from the official GRBLhal github repository then it is very likely to behave badly.

    To find the actual GRBL version we need all of the serial console from when it first connects. copy to a file and attach the file.
     
  4. Matt Petersen

    Builder

    Joined:
    Aug 2, 2023
    Messages:
    25
    Likes Received:
    5
    Thanks for the info David, appreciated.

    As I don't have home limit switches in place at the moment I always return the axis to 0,0,0 before powering off the machine so when I power it back on I know it is at the physical home location.

    What is the issue with soft limits? Do they not function correctly? I had assumed that they would limit my travel from the home location to prevent hitting the far end stops - seems like a function I will need, is the other option to run limit switches at both ends?

    When I use G28 it is always from a 0,0,0 position, the issue only appears to affect the Y axis and the value it is attempting to go to doesn't show correctly in the interface. This only occurs after a power on, once the values are reset it works perfectly till next power on. Can I query the G28 coordinations from the command line to see what it thinks it will use?

    I am not at home at the moment so will post the console text a bit later on. Re flashing which option do I choose for non Blackbox controllers?

    Cheers
    Matt

     
  5. David the swarfer

    David the swarfer OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 6, 2013
    Messages:
    3,430
    Likes Received:
    1,907
    they do work correctly, but everything else has to be done right first.
    they would help but some elementary thinking on your part can prevent the need. you did the drawing, you know how big the object is, you created the CAM, you know where and how it is going to move, and how far. now you apply that knowledge to the material setup, it fits the bed, it fits the work envelope, the tools are not too long which would cause Z to raise too high, all set? right, lets cut.
    to quote myself
    "you can check the offsets by issuing a $# at the serial console, it will reply with all the offsets so you can see what the actual numbers are before you try your power cycle thing."
    ah, there's the rub. unless your board has the same usb id's as a blackbox you cannot select it in CONTROL, you have to use an external flasher, and in fact you would need to custom compile the software because the MKS board has it's own pinouts that do nto match a Blackbox. So, lets check what you actually have before we go down that rabbit hole.
     
  6. Matt Petersen

    Builder

    Joined:
    Aug 2, 2023
    Messages:
    25
    Likes Received:
    5
    Thanks for all the assistance so far David.

    Console output pasted below. I figured out why my jog speed was so slow, the slider was wound all the way down....

    Cheers
    Matt

    [12:09:13] [ connect ] PORT INFO: Port is now open: undefined - Attempting to detect Firmware
    [12:09:13] [ connect ] Checking for firmware on undefined
    [12:09:13] [ connect ] Detecting Firmware: Method 1 (Autoreset)
    [12:09:13] [ ] ok
    [12:09:14] [ connect ] Detecting Firmware: Method 2 (Ctrl+X)
    [12:09:14] [ ] Grbl 1.1h ['$' for help]
    [12:09:17] [ connect ] Firmware Detected: grbl version 1.1h on 192.168.69.32
    [12:09:17] [ $$ ] $0=10 ;Step pulse time, microseconds
    [12:09:17] [ $$ ] $1=25 ;Step idle delay, milliseconds
    [12:09:17] [ $$ ] $2=0 ;Step pulse invert, mask
    [12:09:17] [ $$ ] $3=5 ;Step direction invert, mask
    [12:09:17] [ $$ ] $4=0 ;Invert step enable pin, boolean
    [12:09:17] [ $$ ] $5=1 ;Invert limit pins, boolean/mask
    [12:09:17] [ $$ ] $6=0 ;Invert probe pin, boolean
    [12:09:17] [ $$ ] $10=1 ;Status report options, mask
    [12:09:17] [ $$ ] $11=0.010 ;Junction deviation, millimeters
    [12:09:17] [ $$ ] $12=0.002 ;Arc tolerance, millimeters
    [12:09:17] [ $$ ] $13=0 ;Report in inches, boolean
    [12:09:17] [ $$ ] $20=0 ;Soft limits enable, boolean
    [12:09:17] [ $$ ] $21=0 ;Hard limits enable, boolean
    [12:09:17] [ $$ ] $22=0 ;Homing cycle enable, boolean (Grbl) / mask (GrblHAL)
    [12:09:17] [ $$ ] $23=5 ;Homing direction invert, mask
    [12:09:17] [ $$ ] $24=300.000 ;Homing locate feed rate, mm/min
    [12:09:18] [ $$ ] $25=1000.000 ;Homing search seek rate, mm/min
    [12:09:18] [ $$ ] $26=250.000 ;Homing switch debounce delay, milliseconds
    [12:09:18] [ $$ ] $27=1.000 ;Homing switch pull-off distance, millimeters
    [12:09:18] [ $$ ] $28=1000.000 ;G73 retract distance, in mm
    [12:09:18] [ $$ ] $30=1000.000 ;Maximum spindle speed, RPM
    [12:09:18] [ $$ ] $31=0.000 ;Minimum spindle speed, RPM
    [12:09:18] [ $$ ] $32=1 ;Laser-mode enable, boolean
    [12:09:18] [ $$ ] $38=1 ;Spindle encoder pulses per revolution
    [12:09:18] [ $$ ] $40=1 ;Apply soft limits for jog commands, boolean
    [12:09:18] [ $$ ] $100=40.000 ;X-axis steps per millimeter
    [12:09:18] [ $$ ] $101=40.000 ;Y-axis steps per millimeter
    12:09:18] [ $$ ] $102=200.000 ;Z-axis steps per millimeter
    [12:09:18] [ $$ ] $103=100.000 ;A-axis steps per degree
    [12:09:18] [ $$ ] $104=100.000 ;unknown
    [12:09:18] [ $$ ] $105=100.000 ;unknown
    [12:09:18] [ $$ ] $110=20000.000 ;X-axis maximum rate, mm/min
    [12:09:18] [ $$ ] $111=20000.000 ;Y-axis maximum rate, mm/min
    [12:09:18] [ $$ ] $112=6000.000 ;Z-axis maximum rate, mm/min
    [12:09:18] [ $$ ] $113=1000.000 ;A-axis maximum rate, deg/min
    [12:09:18] [ $$ ] $114=1000.000 ;unknown
    [12:09:18] [ $$ ] $115=1000.000 ;unknown
    [12:09:18] [ $$ ] $120=1500.000 ;X-axis acceleration, mm/sec^2
    [12:09:18] [ $$ ] $121=2500.000 ;Y-axis acceleration, mm/sec^2
    [12:09:18] [ $$ ] $122=500.000 ;Z-axis acceleration, mm/sec^2
    [12:09:18] [ $$ ] $123=200.000 ;A-axis acceleration, deg/sec^2
    [12:09:18] [ $$ ] $124=200.000 ;unknown
    [12:09:18] [ $$ ] $125=200.000 ;unknown
    [12:09:18] [ $$ ] $130=621.000 ;X-axis maximum travel, millimeters
    [12:09:18] [ $$ ] $131=1021.000 ;Y-axis maximum travel, millimeters
    [12:09:18] [ $$ ] $132=50.000 ;Z-axis maximum travel, millimeters
    [12:09:18] [ $$ ] $133=300.000 ;A-axis maximum travel, degrees
    [12:09:18] [ $$ ] $134=300.000 ;unknown
    [12:09:18] [ $$ ] $135=300.000 ;unknown
    [12:09:18] [ $$ ] ok
    [12:09:19] [ $I ] [VER:1.1h.2020062101:]
    [12:09:19] [ $I ] MPHSW]
    [12:09:19] [ $I ] [MSG:Using machine:MKS DLC32]
    [12:09:19] [ $I ] [MSG:Mode=STA:SSID=FamilyHome:Status=Connected:IP=192.168.69.32:MAC=C4-DE-E2-DD-D2-F4]
    [12:09:19] [ $I ] ok
    [12:09:19] [ $G ] [GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F0 S0]
    [12:09:19] [ $G ] ok
     
  7. David the swarfer

    David the swarfer OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 6, 2013
    Messages:
    3,430
    Likes Received:
    1,907
    1.1h is the last GRBL version, and I see no indications it is running grblHAL even though the board has an ESP32 processor

    also not seeing the grblHAL extended settings....

    however you said the boar dis a
    Code:
    Running Nema 23 motors with an MKS DLC32 control board on 12v. DM556 drivers with a 36V power supply.
    and you don't mention the version, and googling that board there are 2 versions, one with an Atmega328p processor which would run GRBL
    and one (the V2?) that has an ESP32 that should run grblHAL.

    can you clarify which exact board you have?
     
  8. Matt Petersen

    Builder

    Joined:
    Aug 2, 2023
    Messages:
    25
    Likes Received:
    5
    Thanks again David. The board is the V2.1 which has the Espressif ESP32 chipset. I have confirmed that the chip on the board is labelled as such.

    Cheers
    Matt
     
  9. David the swarfer

    David the swarfer OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 6, 2013
    Messages:
    3,430
    Likes Received:
    1,907
    thanks, then you can compile grblHAL for that board, there is already a pin definition for it
    http://svn.io-engineering.com:8080/

    I think that flashing a real grblHAL will make it work properly with CONTROL and stop it forgetting offsets for G28
     
  10. Misterg

    Misterg Veteran
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 27, 2022
    Messages:
    350
    Likes Received:
    273
    It looks like that board runs a variant of GRBL_ESP32.

    Try typing:

    $settings/list

    The extended commands are documented here (note that it is no longer actively supported):

    Settings


    My homemade CNC controller also uses GRBL_ESP32 and works fine with Control (with the exception of editing non-core GRBL settings, or the firmware wizards). Soft limits work OK, but if your home switches are not at the maximum travel of each axis (back/right/up usually) you need to tell the machine where the home position is, or you get the error you report.

    The software can be compiled in the Arduino IDE, but it hasn't been updated for several years (not a problem - it just 'works').
     
  11. Matt Petersen

    Builder

    Joined:
    Aug 2, 2023
    Messages:
    25
    Likes Received:
    5
    Thanks everyone for all the replies.

    Does look like GRBL_ESP32 as the settings/list commmand works.
     
  12. Matt Petersen

    Builder

    Joined:
    Aug 2, 2023
    Messages:
    25
    Likes Received:
    5
    Thanks for the info David, I used that link and downloaded a compiled firmware for the DLC32 V2.x and have flashed it. Have a lot more commands now in the settings tab and the G28 position is remembered.

    Time to test the soft limits, limit switches, and TTL outpuot now to see if those issues are resolved

    Cheers
    Matt
     
    David the swarfer likes this.
  13. Matt Petersen

    Builder

    Joined:
    Aug 2, 2023
    Messages:
    25
    Likes Received:
    5
    Thanks for the info David, I used that link and downloaded a compiled firmware for the DLC32 V2.x and have flashed it. Have a lot more commands now in the settings tab and the G28 position is remembered.

    Time to test the soft limits, limit switches, and TTL outpuot now to see if those issues are resolved

    Cheers
    Matt
     

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