Expanded the hardware interface into seperate arm classes