SparkFun Forums 

Where electronics enthusiasts find answers.

Have questions about a SparkFun product or board? This is the place to be.
By MJ
#7047
I've successfully set up Microchip's USB bootloader using an 18F4550, but wondered the reason for using a type B USB connector (square, larger) in all the different sample schematics. Is there any reason you can't use a Type A (flat, familiar interface)?
By NleahciM
#7048
MJ wrote:I've successfully set up Microchip's USB bootloader using an 18F4550, but wondered the reason for using a type B USB connector (square, larger) in all the different sample schematics. Is there any reason you can't use a Type A (flat, familiar interface)?
Type As are typically used for the host, and type Bs (along with the couple mini usb connectors) are typically used for the device. I have yet to see a single type A to type A connector.
User avatar
By wittend
#7050
NleahciM wrote:
MJ wrote:I've successfully set up Microchip's USB bootloader using an 18F4550, but wondered the reason for using a type B USB connector (square, larger) in all the different sample schematics. Is there any reason you can't use a Type A (flat, familiar interface)?
Type As are typically used for the host, and type Bs (along with the couple mini usb connectors) are typically used for the device. I have yet to see a single type A to type A connector.
They definitely do exist - there is a cable listed on this site (see 'USB Male Type A Connector' under the ordering options) but they are definitely NOT a good idea, unless you are just using them as an extension. They violate the USB spec., and (more importantly) can potentially destroy a device if you plug host->host (a->a) or client->client. Normal USB is NOT a peer-to-peer protocol ordinarily. The devices at the enbds of the cable are not equivalent. I understand that Firewire can do this, and the currently little used USB on-the-go standard allows peer-to-peer. Use miniB connectors for this.

In fact that might be an interesting idea - I believe that Cypress has some USB on-the-go parts. Their documentation does not have a good reputation, butperhaps SparkFun could value-add that.
By MJ
#7051
Thanks for the feedback; I found this link that backs up what you've said:

http://www.beyondlogic.org/usbnutshell/usb2.htm

So how would one design a device to use the Type A connector (as is so often seen)? (And has been made recently available by SFE).
By MGP
#7067
Don't mess around using non-compliant connector schemes. If the standard USB-B (Device) connector is too large for your application, use a Mini-B instead. They are common and so are USB-A (Host) to Mini-B (Device) cables.