Solved

Implementing USB master mode in Firmware

Posted on 2003-10-28
7
640 Views
Last Modified: 2013-12-09
This is a somewhat hack-ish question but maybe this is the right place.

First off, is a limited scope but fully firmware USB Host / Master feasable?

By limited scope, I mean that this Host will only be able to recognise / interact with specific USB devices and endpoints. eg. Only USB memory sticks.

The application in mind is requiring offline / removable storage and the USB memory stick is the ideal candidate but the cost of a full USB Host controller IC is prohibitive in respect of the cost of the application requiring it.

Or rather, I ask the EE forum, where could one look to find some  low level USB protocol and data frame specifications so that a USB host can be created that speaks to USB memory sticks only?

The processor in mind is a small-ish PIC 18F.
PIC18F252 with pretty much all the serial port hardware / timers that should be necessary. At about 20+ MHz, I feel this should be enough to handle the protocol parsing and processing load.

Other MCU suggestions are welcome within reason of course...
but cost is the limiting factor otherwise a commercial USB host would have been used...

ps: The project is a media playing device using USB memory devices.
pps: It's not for a commercial application, just a "hobby" one.

0
Comment
Question by:kongfr
7 Comments
 
LVL 12

Expert Comment

by:public
ID: 9640691
Gosh the full usb controller is a processor based asic. If you ask for a sample, you can get a couple for free. Not exactly prohibitive cost.
You will still need to write some code to ignore unwanted usb devices when inserted.
To find what to do you will need to study datasheets for the controller you get.
0
 

Expert Comment

by:ddenu
ID: 9740629
Actually an embedded USB host would be a cool thing. Lots of simple USB drives exist, ie foot switches, signal lamps,data loggers etc. that could be integrated.

As far as I know the PIC devices cannot function as hosts on the USB, only as slaves.

Do we have sources for the usb host ASICs?

Thanks

Dave
0
 

Accepted Solution

by:
ddenu earned 125 total points
ID: 9740661
Doing a little searching I found this app note:

http://pdfserv.maxim-ic.com/en/an/AN1822.pdf

It sounds like it could suit your purpose.

Dave
0
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

 
LVL 13

Expert Comment

by:AlbertaBeef
ID: 9807351
Well, it's been a while since any comment has been made and it's time to cleanup this TA.

To the Questioner:  If one of the experts here answered your question, please accept that answer, or split points among experts if it's appropriate.

Experts, please leave any closing recommendations here within one weeks time so a final recommendation can be made - No comment means you don't care!

I'll check back and leave my final recommendation to the Cleanup TA in one weeks' time.

AlbertaBeef
EE Cleanup Volunteer
0
 
LVL 1

Author Comment

by:kongfr
ID: 9841934
Sheeow this one slipped my mind actually.

It's actually a challenge to to find / develop a fully software USB Host solution and the comments of "Just get a sample IC" demonstrate no sense of adventure in my earnest opinion....

OK to Dave, who seemed to be the only one geniunely interested in the possiblities, I will award the points.

By the way, the App note you referred to w.r.t. the USB "On-The-Go" peer to peer tech was not quite the thing I was looking for.
I had seen that it before from the Philips website and I decided against that since you've got to buy something, you're using money to solve a problem....lack of challenge.
Besides that, once you do it in software AND it's open source, then it's yours forever.

So 125 points to Dave for trying to help.
I still think it's possible so the hunt continues.


0
 

Expert Comment

by:jimbuchheim
ID: 10189693
kongfr:
Did you ever made it work? Speak to a USB memory stick without a USB HOST ?

Also, what is your email?

Best regards,

Jimmy
0
 

Expert Comment

by:SETP
ID: 10913052
Dear kongfr
Even your question about USB in host mode was made some time ago, I would like to try to made some contrubution on this matter.
Also I am develooing a data-logger using   PIC18F8720 with 32 Mb flash memory on its side.  The intention is to download (read and Write ) data from a flash memory stick and its data to downloaded intyo a PC (Windows  OS)

I fpund a nice chip from Cypress SL811HS able to be used as interface between the PIC and the stick memory working on dual role (Host or peripheral).  The manufacturer publish source code but I am not too sure if it is enough.
Even when I started today with this project and I have installed my fisrt chip on the board, I did not started yet with the programing and experimentation.  Cypress published soem source code for  initialization, but I am not too sure what protocol to be used...no idea.
I hope that this bring some light into the matter.
Good luck
JORGE (Pretoria- South Africa)
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

So, if your PC is old or new and it does not boot or has no display then what do you do? Precautions : -During connecting or disconnecting devices, be sure to have the AC electrical power disconnected -Temporarily ground yourself, or use a wris…
Introduction: When a connection to the internet is established, there always exists a modem between the connected device and the ISP (Internet Service Provider). The Operating System (OS) on your PC controls the modem which communicates with the …
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now