Hello all! A little history: About 4 to 5 years ago I built a CNC router using my own design gleaned from several others, and the parts from OpenBuilds Parts Store. I used an xPro V3 controller. I have checked calibration, and 10 mm moves each access exactly 10 mm. After all this time of struggling with graphics programs and CAM software, I finally broke down and purchased a copy of Vectric VCarve Desktop. Things go perfectly right up to putting a gcode file into the controller and making it carve wood. For whatever reason, I am apparently very dense in that I am somehow getting the x and y axis screwed up. The z axis appears to be working fine, but the x and y end up going off the edge of the material by a considerable amount. It's almost as if there is a unit conversion issue somewhere. For transparency, I am using inches within the program to draw the image, and then when I write it to a gcode file, I am using the mm. Maybe that is where I am failing, but I haven't found any documentation that states it will or won't do the conversion. Do I need to put my controller into inches mode and write the gcode in inches instead? Any and all help is appreciated. Call me stupid, because that's probably my problem. However, if the conversion from inches to mm is the issue, then I will need some info on how to access the registers on the xPro V3 to convert it to inches. I did try that, but it never seems to keep the setting and always reverts back to mm on power cycle.
Its perfectly fine to design in one unit of measurement and post to another. You just have to make sure the post processor you are using spits out a G20 (inch) or G21 (mm). If it does that, then your controller will read that and know what unit of measurement its supposed to cut. Even if your machine is in mm mode before you load the file, it will switch to inch if it encounters a G20 command in your gcode file. So, what post processor are you using? If you use the OpenBuilds grbl processors built into Vectric products, then within the first few lines, it will call out G20 or G21. Example T1 G17 G21 G90 G0Z44.450 G0X0.000Y0.000 M3S12000 G4 P1.8
Thank you for that info. I am using grblpanel right now. Was originally using UGS 2.0.9, but for some reason it has stopped working as of tonight. Not sure what is going on with that. First 4 lines of the gcode file in quesiton are: T1 G17 G21 G90 So given that, I have no idea what else to check at this point. I will say that I flashed the xPro V3 with the latest GRBL hex code. It was originally on 0.90, but nothing would work with that code and the version of java I had on my laptop, so I researched updating and am now running GRBL 1.1h. Wondering if the controller is just too old at this point, but would think the latest GRBL code should work.
I vaguely remember issues with the latest grbl on an earlier xpro. An xpro 3 I believe. Peter who is a mod here can answer that better than I. But if the machine is actually working (moving) and the gcode file has the appropriate G20/G21 call, then its probably your steps/mm settings. I know you said you calibrated, but its sure pointing to that. Try using OpenBuilds Control: OpenBuilds Software - FREE Software for CNC Control: OpenBuilds CONTROL and OpenBuilds CAM If you can get it to connect to the xpro, then go into the Wizards and Tools menu. There are calibration wizards in there. If not, then check out this video: You didnt answer my question about the post processor you selected in Vcarve. Use the OpenBuilds grbl ones. If you want a new controller, check out the OpenBuilds Blackbox BlackBox Motion Control System. Its awesome. I know my tags say I'm as staff member, but I'm not. Im an end user who helps out here on the forums. I get nothing from this endorsement
The old xpro issue related to some versions needing $4=0 and some needed $4=1. Wrong setting would not move at all.
So I am using VCarve Desktop and using the GRBL post processor. Is there a difference between that and the OpenBuilds post processor? Sorry, yes I am using the GRBL, not the OpenBuilds GRBL. I will change, as I was not aware there was a difference. I did do a gcode output using the OpenBuilds GRBL, and there was 1 additional line in the file, but otherwise it was identical. Material size is 5.5 inches high by 12 inches wide. GCode is attached. The Ryan-Stitch.gcode is with the standard GRBL post, the Ryan-Stitch1.GCODE is with the OpenBuilds GRBL post. Pic from VCarve showing what it is saying will come out is also attached
The code looks fine. From X and Y zero, it should only move 291.519mm in X and 128.878mm in Y. A few things come to mind: Are you sure that X and Y 0 are at the corner of your stock? How far is a "considerable amount"? Any chance you reset your controller between setting your work offset and running the job?
Considerable amount is 2 to 4 inches before I stop the machine for fear of going too far to the end of the axis. I always zero to lower left corner of the material and then immediately run the program, so program is already loaded and ready to go. It's almost like it's scaling up the size of the drawing as it's running. I have all the settings from my controller, and they always look the same between power cycles. At this point, I am at a total loss, as this is the first time this has done this. I was able to create a 4 letter name, and it stayed on material, but that was running the gcode using ESTLcam. UGS and grblpanel seem to have issues for some odd reason. I'll try the OpenBuilds control software and see if I can get it to work. It will be this evening before I can do that, but I'll report back as soon as I can.
As Shawn said, xmin and xmax are within your material max 291.519 11.47" min 11.868 0.467" note that your x0 y0 point is therefore about .5 inch left of the drawing itself, same in Y, but this is not the problem if you see it going 4 inches beyond the edge of the board. so, not the gcode, logic tells us it must then be calibration (or maybe EMI, but that does not usually add steps) so, calibration. you mentioned a 10mm command moves 10mm. but this is much too short for calibration, rather calibrate against a 12" rule HOWTO Calibrate your CNC Machine for MACH3 or GRBL There is a calibration wizard built into OBCONTROL (-: Ditch grblpanel, if I recall correctly it was last updated many years ago and has missed some new grbl features. Just to make sure we are all on the same page.....here is the process I would follow turn on machine HOME it place material and fasten it down load the Gcode jog to where must be X0 and use the 'setzeroX' button to set zero there jog to where must be Y0 and use the setZeroY button Use the paper (or other method) to jog Z so the bit 'just' touches the top of the material and use setZeroZ button. Jog Z up half an inch (to clear clamps etc) give the command G21 G1 X291 F1000 and confirm that the bit stops about half inch short of right edge of material. if yes then run gcode if no then calibrate/fix/diagnose before running gcode (not you need to rehome after calibration because GRBL must be reset after steps/mm changes)
i'll run all this again to see what happens. just to add further information, i've also tried ugs 2.0.9, both the 32 bit and 64 bit. for some reason it worked a couple of days ago, and then stopped working, so i switched to grblpanel. i'll try it again with the openbuilds control software. ultimate goal is to eventually replace all my electronics with the kit that openbuilds sells along with the control panel so i don't have to keep taking my laptop out to the garage, i can just run it with a usb drive at the machine.
So I have attempted several calibrations and have been only partially successful. The y and z axes seem fairly close but the x is giving me issues The attached video demonstrates a noise that I have not been able to correct. All axes spin easily by hand when power is removed from the controller. Wondering if there is a binding somewhere that is causing my calibration to be thrown off The x axis I use 400mm for calibration, yi used 500 and z I used 50 Thank you all for your help thus far!
To add more info, when I quickly turn the couplers at the end of the lead screw it seems like it's moving too fast for the blocks. I am using the anti-backlash blocks, in case that matters. I've tried adjusting the tension on it, but that doesn't seem to have any effect on the issue.
If you turn your stepper motors by hand, PLEASE make sure the power is off AND they are then disconnected from the controller. The motors act as generators when turned by hand and can generate very high voltages which could destroy your stepper drivers. Alex.
I appreciate that. I do disconnect them. At this point, however, I'm so frustrated that I'm just about ready to just haul it off to the trash. Never had completion of any project escape me so thoroughly! Quite disgusted with this. I designed and built this over 4 years ago, thinking that within 5 to 10 years I could be making some decent side money. However, this has become the biggest waste of money and time I have ever started out trying.
Sounds like a wiring issue. Double check all your wire ends (screwed down on bare wire not insulation, no traces sorting other wires, etc) Maybe post your grbl settings as well.
how is it a wiring issue? the axes move, and in the correct direction. everything functions, just not accurately.
sorry, missed the second part of your reponse. here are my grbl settings. every time i attempt to calibrate my x axis at this point, i get a different measurement. i am attempting to calibrate at 500mm, and it will move anywhere from 490 to 512 mm, depending on what the last calibration was. closest i've ever gotten was 502mm $0=10 ; Step pulse time, microseconds $1=255 ; Step idle delay, milliseconds $2=0 ; Step pulse invert, mask $3=4 ; Step direction invert, mask $4=1 ; Invert step enable pin, boolean $5=0 ; Invert limit pins, boolean $6=0 ; Invert probe pin, boolean $10=2 ; Status report options, mask $11=0.020 ; Junction deviation, millimeters $12=0.002 ; Arc tolerance, millimeters $13=0 ; Report in inches, boolean $20=0 ; Soft limits enable, boolean $21=0 ; Hard limits enable, boolean $22=0 ; Homing cycle enable, boolean $23=1 ; Homing direction invert, mask $24=2000.000 ; Homing locate feed rate, mm/min $25=1000.000 ; Homing search seek rate, mm/min $26=250 ; Homing switch debounce delay, milliseconds $27=5.000 ; Homing switch pull-off distance, millimeters $30=1000 ; Maximum spindle speed, RPM $31=0 ; Minimum spindle speed, RPM $32=0 ; Laser-mode enable, boolean $100=200.000 ; X-axis steps per millimeter $101=197.920 ; Y-axis steps per millimeter $102=191.520 ; Z-axis steps per millimeter $110=1000.000 ; X-axis maximum rate, mm/min $111=1000.000 ; Y-axis maximum rate, mm/min $112=1000.000 ; Z-axis maximum rate, mm/min $120=100.000 ; X-axis acceleration, mm/sec^2 $121=100.000 ; Y-axis acceleration, mm/sec^2 $122=100.000 ; Z-axis acceleration, mm/sec^2 $130=270.000 ; X-axis maximum travel, millimeters $131=270.000 ; Y-axis maximum travel, millimeters $132=80.000 ; Z-axis maximum travel, millimeters $I=cbeam
If it is one axis and it is off by varying amounts, is there a chance your X axis shaft coupler is loose?
i don't think so, but that's an easy one to double check all the couplers. it's very frustrating. i've got an issue somewhere, maybe in the anti backlash blocks? other than a controller or stepper motors that just aren't fucntioning correctly. i should be able to completely disconnect the couplers and run the motors and rule those and the controller out, correct? in other words, if disconnecting the couplers and running the controller and motors as if they were connected still causes the chattering, then it's a controller or all 4 steppers are bad, otherwise, it's got to be in the lead screw/anti backlash connection. i will say that this machine sat for almost 4 years doing nothing because i gave up on it for a while. i am at the point now where i either get this up and running, or i go find some financing for a complete factory built router.
So all the motor coils are properly paired? No loose wires? Most likely not since it appears to move properly, but an intermittent connection of a wire could be causing problems. I just got done trouble shooting an issue with some drivers that worked fine, until the didn't. One of the screws in the wire connector was loose but the wire still was inside, but not making good contact. Are all parts off the shelf Openbuids parts? Reason I ask is that I dropped and lost a set screw for the lock collar on my X axis. I replaced it with an M3 screw. It was just slightly too long and it made a similar knocking sound as the shaft rotated because it was hitting the cbeam walls in the channel the lead screw runs in. It was enough to cause the axis to loose steps. To me the video sounds like it is mechanical in nature. But it is hard to tell. I did not realize earlier that the issue was on all 3 axes. I thought it was just the X. Are you still using the Xpro board? Is the current properly adjusted? I can't tell what size motors you have. Because it is of your own design, it makes it a little more difficult to diagnose because none of us here have seen it in person.
i'll answer in order: i believe the motor coils are paired properly. i was very diligent in making sure of that, as that is one thing i read was critical while i was researching before i ever ordered any parts. no loose wires that i can find. i'll check motor coil pairing again, as well as all connections made. all the screws, couplers, and plates are openbuilds parts. the only things that did not come directly from openbuilds was the xpro v3 controller, the stepper motors and power supply. the motors and power supply came from omc-stepperonline.com, which was a link referenced in other builds, and the controller came directly from spark concepts. yes, the problem is on all 3 axes. yes i am still using the xpro v3 board. i have updated the grbl code to 1.1h. current was adjusted at the time of build. i'll confirm that as well. motors are nema 23 motors. i appreciate all the help that has been given thus far, and thank you in advance for further input. the wiring had come up earlier, and i was confused as to the question, but confirming the coil pairing does make sense now that it was specifically mentioned. thank you for that, and thank you to @sharmstr for your input as well. i re-read my reply, and apologize if it sounded dismissive, but wasn't thinking in terms of coil pairing and such. i will go through this list and report any findings.
just checked the x axis and both coils are correctly paired, as well as correct polarity according to the wiring for that controller. will check the y and z axes as well as current adjustment sometime in the afternoon and report back
I appreciate that. Whats strange is that it sounds terrible on all axis. I didnt see anything strange with your settings. Maybe remove the x motor from the machine and see if it still makes that noise when you jog. That will at least narrow your search.
My next steps will be to disconnect the coupler and jog x axis. That should rule in or out the overcurrent since wiring is good and I was very careful to wire all axes identically. I'll work on that this afternoon
The drivers on them can cut in and out several times per second during overheating causing a similar audible symptom - put a fan on it and dial current down a little.
I had similar issues when my DRV8825 drivers on my first controller would overheat which is the reason I upgraded to the DQ542MA drivers. But now, it would be easier and the same price to go with the Black Box. The XPro usses those same DRV8825's if I am not mistaken. They are way undersized (IMHO and from my experience) for a CNC router that will be run for any length of time. They are pretty much small laser cutter/3d printer drivers which use smaller motors and move around much less mass. You have a very large/stout machine judging by your build pictures.
I have to agree with Giarc. I started with an xpro, then built my own using DQ542MA drivers then ended up with a blackbox.
just confirmed that the xpro v3 does have the drv8825 drivers. i've been keeping tabs on the heat sinks on those chips, and they never really got that hot. they were warm to the touch, and the stepper motors i have are rated at 2.8 amps vs the 2.5 amp max of the driver. i guess that's a little detail that i missed at the time. that could explain a lot of the problems i've had!