The main objective with an Abstraction Layer is to protect user modules from changes between platforms. Code on user level should be portable and plug & play after you done a 10 minute task of soft-wiring. I decided on the name “Abtraction Layer” because HAL (Hardware Abstraction Layer) is missued to much and was not…