Implemented most Device functions