All the Arduino examples involving communication via USB I could find use a virtual COM Port.

On the Arduino part it's


And on the PC part it's just using a virtual COM Port.

However, the Arduino Due includes a native USB port, without all that UART+FTDI chip. I couldn't find any examples using the native interface, it seems everyone is content with communicating using the simple but slow way of Serial.write();.

How can I make full use of the native USB port, besides directly accessing the registers of the Cortex-M3, which seems to be a very tedious and complicated process? The data I would like to transmit is both large and time-critical, so I need to take care of buffer sizes, transfer types, etc., so writing characters one at a time to a general-purpose serial interface is not enough. The PC endpoint (I'm considering using libusb) should also see a proper USB device instead of a virtual COM port.

  • Sounds like it's time to move up to Atmel Studio. – Ignacio Vazquez-Abrams Jul 10 '15 at 5:19
  • Sounds like you need to use a HID interface. I believe the Arduino core includes generic HID code, though I haven't used it, and I'm not sure it's actually enabled by default. – Majenko Jul 10 '15 at 11:03
  • @IgnacioVazquez-Abrams Atmel studio Requires an ISCP, right? – tuskiomi Jun 28 '16 at 15:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.