make provider count depend on device type