According to the schematics, the Arduino Due has two USB inputs:

  1. Native
  2. Programming

Why is this? And when would I use the different ports?

  • Is there a mapping of the native port to serial pins? The programming port maps to 0 and 1 correct?
    – user3233
    Commented Jul 20, 2014 at 1:15

1 Answer 1


Either port can be used for programming, but the native USB port lets you do other things:

It also enables the Due to emulate a USB mouse or keyboard to an attached computer. To use these features, see the Mouse and Keyboard library reference pages.

The Native USB port can also act as a USB host for connected peripherals such as mice, keyboards, and smartphones. To use these features, see the USBHost reference pages. http://arduino.cc/en/Main/arduinoBoardDue

So you can use the Due to interface with USB devices or connect it to your computer and have it act like a USB device.

  • So, it would be possible to attach a mouse to USB native, and detect and Register mouse movements in the host laptop via the other USB input?
    – poseid
    Commented May 19, 2014 at 11:40
  • I think only the native one can do both of those things. The other one is for programming only.
    – sachleen
    Commented May 19, 2014 at 18:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.