Did you command it to go to -140,30 and were expecting that exact quantity in the WCS and MCS fields? If so, here’s what’s going on. There’s a lot of math that has to go on to command a stepper motor to position the head at a particular place. The steppers themselves don’t have infinite resolution - if you’re using the default settings/onboard drivers then you’re configured for 1/16th microstepping, and the stepper motors themselves are 1.8° per step. With the microstepping, that equates to 0.1125° per microstep. This is translated to linear motion using a timing pulley and a belt. Next up: trigonometry. I’ll spare the complicated math, but with the stock belt/gears for a K40 the resolution equates to 0.0063 (and change) mm/step, or 157.575 steps per mm (equating to 2521.200 microsteps). Now, since we can’t move a fraction of a microstep, some interpolation has to be done by the controller. It’s this interpolation error you’re seeing on the screen. It commands the laser to the closest whole microstep value to the desired coordinates. All motion control systems work this way; this is not unique to lasers, the Laserboard, Cohesion3D, Smoothie, or anything else. That’s just how it’s done. Some may be higher resolution than others (e.g. using higher microstep values, different belt/pulley ratios, leadscrews/ballscrews, etc.), but they all operate in this fashion, even the $250,000 precision CNC machines. The trade-offs for higher resolution, and thus precision, are usually cost and speed. This is why you don’t ever see e.g. ballscrews on a laser: they’re horrendously expensive and would slow the machine’s motion way down. Increasing microstepping usually has a negative impact on motor torque, too, so stopping at 1/16 microstepping is about where you want to be.
Also keep in mind that for a belt-drive laser there’s enough mechanical slop in the transport to where a command discrepancy of 3 and 2 microns, respectively, is completely overshadowed by that slop.