'‘HATs’ (Hardware Attached on Top) is an add-on board for Raspberry Pi that conforms to a specific set of rules that will make life easier for users. A significant feature of HATs is the inclusion of a system that allows the Raspberry Pi to identify a connected HAT and automatically configure the GPIOs and drivers for the board, making life for the end user much easier! In a nutshell a HAT is a rectangular board (65x56mm) that has four mounting holes in the (nicely rounded) corners that align with the mounting holes on the Pi has a 40W GPIO header and supports the special auto-configuration system that allows automatic GPIO setup and driver setup. The automatic configuration is achieved using 2 dedicated pins (ID_SD and ID_SC) on the 40W B+ GPIO header that are reserved for an I2C EEPROM. The EEPROM holds the board manufacturer information, GPIO setup and a thing called a ‘device tree‘ fragment – basically a description of the attached hardware that allows Linux to automatically load the required drivers.