View previous topic :: View next topic |
Author |
Message |
spilz
Joined: 30 Jan 2012 Posts: 220
|
[solved] 18F27J53 USB BOOTLOADER Windows 10 driver issue |
Posted: Wed Mar 09, 2016 3:40 pm |
|
|
Hello everyone
I'm working with 18F2550 and use usb bootloader and it works well on winXP 32 bits and win10 64 bits.
But now I'm trying to use 18F27J53 with usb bootloader. It works well on winXP 32 bits, but is not reliable on win10 64 bits :
When I connect the pic through USB, on 5 times I get :
- 3 times error code 10 (This device cannot start)
- 1 times error code 43 (USB not recognised)
- 1 time it works well.
I try to reinstal driver, to reinstal windows 10, nothing change.
I use V5.053 and ex_usb_bootloader.c with 18F27j53 and 4MHz quartz (PLL1)
it works with no error on winXP, what is different with windows 10 ?
thanks for your help
here is the schematic design :
Last edited by spilz on Wed Mar 09, 2016 4:54 pm; edited 1 time in total |
|
|
spilz
Joined: 30 Jan 2012 Posts: 220
|
|
Posted: Wed Mar 09, 2016 3:41 pm |
|
|
I don't use C4 and C5
R3 is connected to PIC18F_VDD (and not Vbat) |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19549
|
|
Posted: Wed Mar 09, 2016 3:49 pm |
|
|
The 5v on the USB connector, cannot connect directly to Vusb.
Vusb, has to be approximately 3.3v, not 5v. The voltage here determines the bus drive levels for the transceivers, so these will be wildly wrong. No wonder it doesn't work....
From the data sheet:
"The internal USB transceiver obtains power from the
VUSB pin. In order to meet USB signalling level specifications,
VUSB must be supplied with a voltage source
between 3.0V and 3.6V. The best electrical signal
quality is obtained when a 3.3V supply is used and
locally bypassed with a high quality ceramic capacitor
(ex: 0.1 F). The capacitor should be placed as close
as possible to the VUSB and VSS pins."
Normally if you are driving the chip off 3.3v, you feed this to Vusb. Then the USB power connection should connect via a potential divider to an input on the PIC, which is then used to sense the connection (this is technically _required_ if the device is not bus powered). |
|
|
spilz
Joined: 30 Jan 2012 Posts: 220
|
|
Posted: Wed Mar 09, 2016 3:57 pm |
|
|
thanks for your reply Ttelmah,
my schematic design is ambiguous,
the 5v from the usb connector (output VUSB) is not connected to Vusb PIN.
Vusb PIN is only connected to C1, is it wrong ? I always did it :( |
|
|
spilz
Joined: 30 Jan 2012 Posts: 220
|
|
Posted: Wed Mar 09, 2016 4:54 pm |
|
|
connected VUSB PIN to 3.3V solved my problem
thanks a lot |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19549
|
|
Posted: Thu Mar 10, 2016 2:07 am |
|
|
The classic switching from a 5v PIC!...
On the 5v chips, there is an optional internal voltage regulator to feed Vusb. The default is for this to be enabled, so all it needs is the capacitor.
On the lower voltage chips, there is not enough voltage for a regulator, so you have to supply the 3.3v.
At least it was nice and quick to fix!. |
|
|
spilz
Joined: 30 Jan 2012 Posts: 220
|
|
Posted: Thu Mar 10, 2016 2:22 am |
|
|
so what about a pic18lf2550 which I use with battery li-ion (3.7v):
I use USB only for bootloader, it works,
but should I put VUSB pin to 3.7v too ? |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19549
|
|
Posted: Thu Mar 10, 2016 3:24 am |
|
|
Oooh, what an annoying voltage!.....
The specified maximum for Vusb, is 3.6v. Minimum 3v.
The minimum specified Vdd for the regulator to give 3.3v, is 4.1v....
What'll be happening, is that the regulator will be giving you about 3.1v. Just legal. Remember also, that the 'nominal' Li-Ion 3.7v is at approximately half discharge, so if reasonably charged it'll be well above this (up to 4.2v). Where you will get problems is if the battery gets low.
Suggestion.
Consider feeding Vusb, with a LDO off the USB Vdd. You can't run USB, unless the USB bus is connected, and if it is you might as well use it's power. Also has the advantage that the USB transceivers aren't then drawing power off your battery. You would need to disable the Vregen fuse (which is what enables the regulator) |
|
|
|