- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I've implement usb 1.1 host/slave IP core in NiosII processor and use it as Host to communicate with USB Mass Storage Class devices. I can read information from the flash drive disk but I can't write data to it. Does anyone have successfull experience or just any ideas? Thanks, Yuriy.Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I got your point. I already developed Mass Storage system but for the HOST i am using my Own Windows Xp PC. 1) My first question for you is that did you use any stack for your HOSt or not??? 2) Did you aware of mass Storage Class structure. your HOST must have to send a data in that formate and at the device side you have to decode it and i think for that you are using ready made mass storage drive. right?so for that u have to no worry. but HOST point of you you have to send CBW-command block wrapper ,CSW - command status wraper and data phase for mass storage class. In short at the HOSt side you have that mechanism which follows mass storage class specification. Best Regards, slsnios- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi slsnios,
thanks for reply. I haven't quite catch your first question, my host controller is usbhostslave IP core, it has some registers, etc. ADDRESS, ENDPOINT, PID and FIFO buffer, so I should fill all appropriate registers and set flag to start transmission. According to the second you're right, as I'm developing host I should worry just about transmit path. Read operation is fully successfull: I'm sending CBW, it is acknowledged by the function, I'm sending request for data and I receive them, I'm sending request for CSW and I receive it. But another case with write operation: I send CBW and it is acknowledged then I send Data and they are acknowledged too, then I send request for CSW but I don't receive it. When I read the same sector after this I can see no changes in data structure. Regards,Yuriy.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
so you are aware of Mass Storage class and thts good.Now i think in write operation and that means in "2a" command you are not able to write anything on your device. and one thing you are pass all the request from the host for your device enumeration like 1) inquairy 2) read_capacity 3) mode_sense etc..... I suggest you one thing and that is if you have sniffer(USB Debugger) then just connect your drive to PC and catch the HOST protocol data in sniffer and mimic same thing in your HOST(embedded host.IP base). Then definately you will get the idea. And the IP you used is from "opencore" or what??? Anyway if you have any doubts then you can ask me... Best Regards, slsnios- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yuriy
could you post you ip ,so many people may be help you
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page