Le schede basate su Arduino con grbl interpretano il g-code al loro interno.
Il PC si limita ad inviare il file g-code ad Arduino, linea per linea.
Con Mach3, è il PC ad interpretare il g-code. Poi utilizza la porta parallela per inviare gli impulsi ai driver (attraverso la breakout board).
Non lo so per certo, ma sono convinto che le versioni USB e ethernet funzionino allo stesso modo.
Il PC genera gli impulsi e li invia alla breakout board via USB o ethernet.
Chiaramente queste ultime sono intelligenti, a differenza di quelle su porta parallela, perché devono interpretare i messaggi inviati dal PC e trasformarli in impulsi.