AnsweredAssumed Answered

BF-70x USB0_ID pin required (in DualRolePort USB)?

Question asked by dav on Sep 11, 2017
Latest reply on Nov 17, 2017 by Jithul_Janardhanan



Question about USB & BF-707, switching between USB Host vs Device mode.

Historically, the USB ID-pin was dictating the mode thanks to the extra pin in the usb receptacle/cable.


Today with Type-C's DRP (dual role port), the configuration is done either via the passive CC1/2 pins or via the PD serial protocol.


Many Type-C detection IC's on the market doesn't have a dedicated gpio output (i2c only) to control the USB0_ID pin (on the Blackfin), so the question to team Analog: 

  • is it possible to set/override the USB0_ID pin in code to switch from Device to Host-mode?
    (i.e. the ID pin is tied to GND)



From the Hardware reference:


When the device containing the USB controller wants to start a session, the processor core must set the USB_DEV_CTL.SESSION bit. The USB controller then enables ID pin sensing. This results in the USB_ID input either being taken low if an A-type connection is detected or high if a B-type connection is detected. The USB_DEV_CTL.BDEVICE bit is also set to indicate whether the USB controller has adopted the role of the A device or the B device.




thanks /david