Description
The Arduino MEGA has a UART implementation (probably something like FTDI)
The Arduino DUE and GIGA boards have native USB serial interfaces.
serialport-rs can enumerate, open, read and write the port from a MEGA.
serialport-rs can enumerate, open the serial port on a DUE or GIGA, but calling read() results in a timeout, even if the Arduino is spinning in a loop printing "hello world" to the SerialUSB interface; so data should always be available.
The units work fine when interfacing via pyserial in a python program.
Baud rate should be irrelevant for the native USB interface but I have tried several values, as well as playing with stop bits and parity.
I'm not sure what else might be helpful in troubleshooting but I'd be happy to provide what I can. If someone needs a GIGA sent to them for troubleshooting I'd be willing to arrange it.