The firmware inside the processor handles all the commands which are transmitted and received by the main program and send data about the hardware state back. The firmware is stored and running in de main processor memory, a firmware update can be uploaded with the bootloader program