support add and remove of devices