refactor device specs