Why do so few CNC machines have even the simplest creature comforts? I see 3D printers that "home" by running against the mechanical stops in all 3 axes, tearing up the tape on the bed in the process. If a machine can not even find its starting point, it is not ready for widespread adoption. Most CNC machines are run by people who could build them, just like most computers used to be run by people who could build them. Computers changed. Now they fix themselves. I wonder: How hard it would be for a CNC to fix itself? Home switches would be the first step. Switches cost pennies each. Add encoders on the steppers, and modify the software to slow down and then catch up on steps when it looses steps. I see quadrature optical encoder disks and sensors for $2 a set. There was a day when the electronics would have had a hard time dealing with encoder interrupts, but today we get AtMega 2560 boards for $10. The hard part is mounting the encoders. Dual-shaft steppers get pricey. I'm sure there is a way that would work on and NEMA motor of a certain size.of we are willing to give up a quarter inch of the shaft. We just design our CNC frame to not need the whole shaft length. Before anyone asks, we still need home switches so we know where home is after a power failure. Add a sensor or two to detect vidration, and tell the software to adjust when it senses vibration by slowing the feed rate. I see 3-axis accelerometer boards for $2-$3 each. Most hobbyist CNC boards support IIC and SPI busses. There may be simpler solutions for detecting vibration. Add a Z button to detect where the bottom of the tooling really is. For 3D printers, detect a loss of fillament and stop. Ruining prints is a sign of a kludged together system. We can do better. I also see incompatible systems. I should be able to buy any CNC frame from a company (out of many sizes) and put any tool head on it. A locking cyllindrical collet is not that hard. The hardest part is making sure the driver board can run any head you mount, but that is a few I/O lines for transistors, relays, and/or sensors. Heads should include: 3D printers, routers/mills, foam cutters, draw knives, lasers, and more. Every tool head could include a CAD program that also generates G code. I wish Dremel and Lowes would get together and sell usable systems, ranging from 4"x6"x4" to 4'x8'x2'. What do you think?