# Reading USB Data From Arduino

Could I read USB data from the mini USB port on an Arduino board, or is that only for installing Sketches?

• What do you mean by "read USB data"? – endolith Jun 20 '11 at 18:33

What do you mean by "read USB data"? If you are referring to devices like keyboards and barcode readers, then no. You'd have to have a board with "USB host" capabilities. That said, apparently there are shields that can provide this functionality.

• If it's an arduino Leonardo, you can have it emulate a USB keyboard/mouse/whatever. – Connor Wolf Nov 15 '12 at 23:11

You can read data from your Arduino, using a program like hyper-terminal on windows. To do that set up hyper-terminal to listen to which ever com port that the Arduino is on with the correct baud rate (Same as in your sketch)

The Arduino is a simple USB to Serial device as Aoi Karasu said.

If you are on Linux or OSX, you can use the command:

screen /dev/ttyACM0 9600


ttyACM0 is the name of the device on my system, you may change it according to your system. 9600 is the baud rate, again you can change it.

• Working perfectly. – dbalakirev Jul 22 '14 at 19:05

Arduino is not a genuine USB device. It acts as a Serial to USB adapter. You have to scan all COM ports in the system to find which one is it and then talk to Arduino (perform read/write operations) using standard serial port communications that come with your development environment.

• A USB serial adapter is very much a genuine USB device, unless it has been mis-implemented. One normally uses an operating system level driver which bridges USB to the operating system's serial port API, but that's not mandated by the hardware - one could treat it as a raw USB device with something like libusb and exchange the USB data at application level. – Chris Stratton Nov 15 '12 at 20:50
• This is not true for the Arduino Leonardo. The leonardo uses a USB-bootloader, and has no intermediate device. It can emulate any USB device the ATmega USB PHY can. – Connor Wolf Nov 15 '12 at 23:12