We are using nRF52840 to design a M.2 module which should supports USB port. But from M.2(NGFF) spec, there is no VBUS power. There are several questions about the USB function on M.2 module:
1. Can VBUS uses +3.3V power instead? Although from the nRF52840 spec, we can see VBUS is from 4.35V to 5.5V. VBUS has two function in nRF52840 internal:
a. VBUS is used to detect USB plug in/out by VBUS,detect and VBUS,remove, and the VBUS,detect is from 3.4~4.3V, VBUS,remove is from 3.0~3.9V.
b. VBUS is used as the USB IO power input voltage, the USB IO power is a LDO and the output DECUSB is +3.3V.
So we want to know can VBUS of nRF52840 support +3.3V power? If not, PLS give us detail reason, TKS.
2. Can VBUS always keep on? We mean that VBUS is always on, then can module goes into sleep? And can USB(only D+ &D-) plug in/out be detected?
We know your current configuration can't support VBUS always on, we want to know if you change you configuration of USB function, then you can support USB sleep and plug in/out detection normal when VBUS always on.
As you say, VBUS must be within 4.35V and 5.5V. Voltage lower than this is outside the specified voltage range, and the module has not been verified outside that.
USB can be always on, but note that it will be disabled if the SoC enters system OFF. Wakeup from VBUS will require VBUS to be toggled on and off to wake up from that source.
OK, we got it. We will provide VBUS within 5V, so the voltage of VBUS has no doubt.
But when we keep VBUS alway on, do you mean that as below:
--When system enters off and USB(only D+ &D-) plug in/out, VBUS can't wakeup SOC?
--When system power on and USB(only D+ &D-) plug in/out, can USB port be enumerated normal?
--When system power on and USB(only D+ &D-) plug in/out, can system of SOC goes into sleep?
- VBUS detected, meaning VBUS rising past the detect voltage, is the only USB-related wake up source. The USB peripheral is shut down in SystemOFF, meaning D+/D- activity will not have any effect inside the nRF52840.
- In the SystemON state (can be considered a shallow sleep state) the USB periperal can be used as normal. All interrupts and events/tasks works as normal.