I see: don't worry, there are a lot of different symbols for the MOSFET transistors: http://en.wikipedia.org/wiki/MOSFET#Circuit_symbols
. As I created the part in EagleCad, I took the right one for enhanced P-MOS, with the body-drain diode which is generally omitted (see "Why there is an inherent diode inside the MOSFET symbol?
" and IRF AN-1084
Regarding R3/R5, they form a 1/10th voltage divider to protect the LPC1343's "USB_VBUS" input pin (PIO0_3, pin 14). Although this pin is 5V-tolerant and have a maximum rating of +5.5V and that the USB spec on VBUS is 5V +/- 5% (i.e. from 4.75V to 5.25V), it is not uncommon to see higher transient voltages during cable connection (up to 10V, see LTC3455/LTC3455-1 datasheet
, figure 6 page 18). Practically, because of the 1µF/16V C2 capacitor and L1 used on +5V, it does not reach +6V. So although not strictly mandatory, the voltage divider is recommended!
And yes, if ISP is activated either by pressing the "ISP" button, or because the internal ROM does not see any valid application in Flash memory, the PIO0_3 (USB_VBUS) is checked to determine whether the UART or USB interface will be used (see "LPC1311/13/42/43 User manual (v.4.0)
", section 21.4 page 320 and figure 63 page 325).
However, this causes an issue when you plug in the USB cable when you have no external power supply: the USBug enters ISP mode unless you press the RESET button! This is because the RESET needs to be maintained low for a while after VCC is applied. I tried to add a capacitor to correct this, but it not reliable, as explained above. I am waiting for some MCP130T-315
voltage supervisor parts that should do the trick.
Although simple, the schematic contains some other "finesses", like the ESD/EMC filters/protections around the USB connector, or the decoupling capacitors. I was thinking of adding a description into the GitHub project wiki...
Don't hesitate if you have any further questions!