Moving most of the arduino comms logic into the class