better device check