PC Review


Reply
Thread Tools Rate Thread

Force USB device to re-enumerate; flush EP2INFIFO in Maxim 3421E

 
 
Bill Davy
Guest
Posts: n/a
 
      3rd Sep 2008
I've opened a USB device and on finding it is not well, I'd like to
effectively simulate temporarily removing the USB cable (a well known way to
clean things up).



In fact, the device is a Maxim 3421E and for some reason there are some
bytes in EP2INFIFO. As a result, all my data reads are offset. I've
written the software (for a SiLab C8051F060) that drives the Maxim over SPI
and it may be that a dodgy SPI clock is to blame for the odd bytes in the
FIFO, but for now I cannot nail that so I am looking for a work-around.
Forcing enumeration of the device will do as then the SiLab resets the Maxim
and that clears EP2INFIFO.



TIA

Bill


 
Reply With Quote
 
 
 
 
Doron Holan [MSFT]
Guest
Posts: n/a
 
      3rd Sep 2008
if you have your own driver, you can cycle the port by sending a
IOCTL_INTERNAL_USB_CYCLE_PORT down the stack

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Bill Davy" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> I've opened a USB device and on finding it is not well, I'd like to
> effectively simulate temporarily removing the USB cable (a well known way
> to clean things up).
>
>
>
> In fact, the device is a Maxim 3421E and for some reason there are some
> bytes in EP2INFIFO. As a result, all my data reads are offset. I've
> written the software (for a SiLab C8051F060) that drives the Maxim over
> SPI and it may be that a dodgy SPI clock is to blame for the odd bytes in
> the FIFO, but for now I cannot nail that so I am looking for a
> work-around. Forcing enumeration of the device will do as then the SiLab
> resets the Maxim and that clears EP2INFIFO.
>
>
>
> TIA
>
> Bill
>
>


 
Reply With Quote
 
 
 
 
Bill Davy
Guest
Posts: n/a
 
      4th Sep 2008
Can (and how can) that be done with WinUSB (the drver I'm using,
6001.071220)?
Thanks,
Bill


"Doron Holan [MSFT]" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> if you have your own driver, you can cycle the port by sending a
> IOCTL_INTERNAL_USB_CYCLE_PORT down the stack
>
> --
> Please do not send e-mail directly to this alias. this alias is for
> newsgroup purposes only.
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
>
> "Bill Davy" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
>> I've opened a USB device and on finding it is not well, I'd like to
>> effectively simulate temporarily removing the USB cable (a well known way
>> to clean things up).
>>
>>
>>
>> In fact, the device is a Maxim 3421E and for some reason there are some
>> bytes in EP2INFIFO. As a result, all my data reads are offset. I've
>> written the software (for a SiLab C8051F060) that drives the Maxim over
>> SPI and it may be that a dodgy SPI clock is to blame for the odd bytes in
>> the FIFO, but for now I cannot nail that so I am looking for a
>> work-around. Forcing enumeration of the device will do as then the SiLab
>> resets the Maxim and that clears EP2INFIFO.
>>
>>
>>
>> TIA
>>
>> Bill
>>
>>

>



 
Reply With Quote
 
Doron Holan [MSFT]
Guest
Posts: n/a
 
      4th Sep 2008
winusb does not (intentionaly) expose cycle port to user mode, it is a
privileged operation that can have serious side effects for the device

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Bill Davy" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
> Can (and how can) that be done with WinUSB (the drver I'm using,
> 6001.071220)?
> Thanks,
> Bill
>
>
> "Doron Holan [MSFT]" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
>> if you have your own driver, you can cycle the port by sending a
>> IOCTL_INTERNAL_USB_CYCLE_PORT down the stack
>>
>> --
>> Please do not send e-mail directly to this alias. this alias is for
>> newsgroup purposes only.
>> This posting is provided "AS IS" with no warranties, and confers no
>> rights.
>>
>>
>> "Bill Davy" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>>> I've opened a USB device and on finding it is not well, I'd like to
>>> effectively simulate temporarily removing the USB cable (a well known
>>> way to clean things up).
>>>
>>>
>>>
>>> In fact, the device is a Maxim 3421E and for some reason there are some
>>> bytes in EP2INFIFO. As a result, all my data reads are offset. I've
>>> written the software (for a SiLab C8051F060) that drives the Maxim over
>>> SPI and it may be that a dodgy SPI clock is to blame for the odd bytes
>>> in the FIFO, but for now I cannot nail that so I am looking for a
>>> work-around. Forcing enumeration of the device will do as then the SiLab
>>> resets the Maxim and that clears EP2INFIFO.
>>>
>>>
>>>
>>> TIA
>>>
>>> Bill
>>>
>>>

>>

>
>


 
Reply With Quote
 
Bill Davy
Guest
Posts: n/a
 
      8th Sep 2008
Shucks.
Bill

"Doron Holan [MSFT]" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> winusb does not (intentionaly) expose cycle port to user mode, it is a
> privileged operation that can have serious side effects for the device
>
> d
>
> --
> Please do not send e-mail directly to this alias. this alias is for
> newsgroup purposes only.
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
>
> "Bill Davy" <(E-Mail Removed)> wrote in message
> news:%(E-Mail Removed)...
>> Can (and how can) that be done with WinUSB (the drver I'm using,
>> 6001.071220)?
>> Thanks,
>> Bill
>>
>>
>> "Doron Holan [MSFT]" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>>> if you have your own driver, you can cycle the port by sending a
>>> IOCTL_INTERNAL_USB_CYCLE_PORT down the stack
>>>
>>> --
>>> Please do not send e-mail directly to this alias. this alias is for
>>> newsgroup purposes only.
>>> This posting is provided "AS IS" with no warranties, and confers no
>>> rights.
>>>
>>>
>>> "Bill Davy" <(E-Mail Removed)> wrote in message
>>> news:(E-Mail Removed)...
>>>> I've opened a USB device and on finding it is not well, I'd like to
>>>> effectively simulate temporarily removing the USB cable (a well known
>>>> way to clean things up).
>>>>
>>>>
>>>>
>>>> In fact, the device is a Maxim 3421E and for some reason there are some
>>>> bytes in EP2INFIFO. As a result, all my data reads are offset. I've
>>>> written the software (for a SiLab C8051F060) that drives the Maxim over
>>>> SPI and it may be that a dodgy SPI clock is to blame for the odd bytes
>>>> in the FIFO, but for now I cannot nail that so I am looking for a
>>>> work-around. Forcing enumeration of the device will do as then the
>>>> SiLab resets the Maxim and that clears EP2INFIFO.
>>>>
>>>>
>>>>
>>>> TIA
>>>>
>>>> Bill
>>>>
>>>>
>>>

>>
>>

>



 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
To make flush right select text and click flush right, Not so! =?Utf-8?B?YW5vcmVvNHU=?= Microsoft Word Document Management 1 10th Oct 2005 11:56 PM
System.IO.StreamWriter Close or Flush method to shut down the computer in such a way that just part of the file is written? or an empty file is written? Also if the Close or Flush is to a streamwriter writing to a network share, is it possible for th Daniel Microsoft Dot NET 1 7th Sep 2005 09:02 AM
1st word in heading flush left second word flush right =?Utf-8?B?RWxpbg==?= Microsoft Word New Users 9 4th Apr 2005 08:44 PM
To Flush or Not to Flush Tom Microsoft VB .NET 1 25th Oct 2004 09:16 PM
Emilia Maxim. Fysh1 Microsoft Access Form Coding 0 24th Jul 2003 12:23 AM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 06:13 PM.