Base device classes