refactoring device_controller