How to use USB host controller ?

Go To Last Post
6 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Guys,

What's the most popular USB host controller ?
is it Vinculum ? How to interface it with AVR ?
Does it mean that, uC has the ability on reading flash disk for example ? and PC can detect uC as a flash memory if SDcard attach on uC?

thanks

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

An AT90USB647 or 1287 has OTG which is enough to host a flash drive. But if you are really looking for USB hosting there are tons of Cortex chips that are probably far more appropriate for an overall solution or how about a $25 Raspberry Pi?

Given your experience level demonstrated in your other threads do you really think you have the skill set for hosting MSD on USB? You are barely able to flash an LED and only have a distant understanding of the C language. You require a lot of experience to implement something like this even when using an excellent library like LUFA.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I read about LUFA before, so this library can help?
How about interfacing my ATMEGA128 as a USB host controller ? what chip do I need ?
That's ok, if I have a low level of C or understanding about it, I'll find out while I use it....that's the point for me of learning ...
I'm abit reluctant to read the whole C books, which in the corner of my bedroom there, finally I don't use most of them, I want to use something practical...
and to the point, enough already reading those books on my uni exam....it was done in my uni time...hehehe

thanks

Last Edited: Thu. Oct 10, 2013 - 12:33 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I am interested in adding a standard USB keyboard to an AVR (of the Mega328 level) in the easiest but robust manner possible.
I'm finding it impossible to get any information on this topic.
Researching USB puts people in a learning-curve spiral. You can't get comprehensive, easy-to-understand documentation anywhere. USB docs are written for engineers who already fully understand USB and only need to confirm obscure details.

Please prove me wrong with a tutorial or web-site reference to a USB overview. I can't use a reference to a 'great' $100 book because I don't buy $100 books. I'm a 60-year-old unemployed technician with obsolete skills, not a 20-year-old student willing to add another couple of dubiously-useful $150 textbooks to his $100,000 USA student loan debt.

From what I've been able to tell, plugging in a USB device to the PC (the USB 'host') causes either the D- or D+ line to be pulled high (through a pull-up resistor in the USB device. This determines whether it is a high or low speed USB connection. Then, the host and device exchange 50-100 bytes (using non-return-to-zero format) to establish software constructions called 'endpoints'. The messages are called 'descriptors' and determine what type of device is plugged in. There are also pid and vid numbers exchanged: these numbers cost thousands of dollars to buy. But the dozen or so people on Earth who understand USB have a way around this. It is possible to download documents that are hundreds of pages long each and packed with enough techno-babble to make even Richard Stallman cry. Or you can pay some company like Synopsys (great guys, I worked for them for a year, not sure what I did for them, but great company) a couple million dollars to get USB set up on your new custom ASIC ICs. They might even through in a free SATA implementation too, if there's room left on the chip die.

For the rest of us, just keep buying those $2 old PS2 keyboards that you find tossed into the junk-gadgets sections of the local GOODWILL store. They are much easier to program and will last a long time as long as you don't reverse VCC and Ground.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Bianchi - you obviously havent done much research. Just a read of the lufa site would've answered most of your questions. Also, there are plenty of posts here on similar subjects.
Our good friend Arduino also has some solutions:
http://www.circuitsathome.com/st...

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:

Please prove me wrong with a tutorial or web-site reference to a USB overview.

I take it you've already seen the Jan Axelson book?

http://www.lvr.com/usb.htm