The Arduino Leonardo is a microcontroller board based on the ATmega32u4. It has 20 digital input/output pins (of which 7 can be used as PWM outputs and 12 as analog inputs), a 16 MHz crystal oscillator, a micro USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started.
The Arduino Nano is a small, complete, and breadboard-friendly board based on the ATmega328 (Arduino Nano 3.x). It has more or less the same functionality of the Arduino Duemilanove, but in a different package. It lacks only a DC power jack, and works with a Mini-B USB cable instead of a standard one.
The CNC Shield v4 is made for the control of 3D printers, milling and engraving machines. This version of the shield has 1 motor driver less than its predecessor, but is more compact and has room for an Arduino Nano. This board has 3 sockets for the installation of stepper motor drivers such as the A4988. Only 2 channels per motor are required to control this motor. There is also a connection for 2 end-stop switches per motor.
The DRV8825 is a Motor Driver with two H-bridge drivers and a microstepping indexer. The driver has a maximum output capacity of 45 V and ± 2.5 A. It can operate bipolar stepper motors in full, 1/2, 1/4, 1/8, 1/16 and 1/32-step modes. This driver module is generally used in Robotics, ATMs and Gaming Machines.