Use a Grbl/GrblHAL based controller, preferably the OpenBuilds BlackBox (https://docs.openbuilds.com/blackbox-x32)