I have noticed a lot of confusion on the terms, so let me explain them.
Arduino - the organization that produces the official hardware (not the laser controller board)
https://www.arduino.cc/Arduino IDE - the software used to program the Arduino hardware
Arduino Nano - one of the Arduino products (which uses an ATmega328P microcontroller)
Controller Board - the laser control board made by Elek Maker that houses the drivers, Nano and other circuits (see diagram)
Firmware - the compiled software that is loaded to the Arduino Nano (the same as the hex file)
GCode - a language used for CNC machines (the instructions sent to Grbl that control the machine)
GRBL - the software that runs on the Arduino Nano to run the laser
.hex - the compiled software that can be loaded on the Nano
Nano - see Arduino Nano above
PWM - Pulse Width Modulation (a method to get varying power from a laser diode, by quickly switching it on/off)
Our systems have Arduino clones (Chinese copies) of the Nano, but they operate just the same as the Arduino's.
- Zax.