Question: Is there a way to collect any data (e.g. MAC addresses, installed devices, driver versions, etc.) from a PC by simply connecting an Arduino via USB to it, so that this PC can be clearly identified?

Background: Basically, I`m using an Arduino to send some text to a computer by emulating a keyboard, but I don´t want the text to be sent to any computer I connect the Arduino with. That is why I want the PC to be identified first.

To be clear: this should be done without having to install programs on the PC in the first place.

  • 2
    No. The Arduino is a dumb device. It can only receive what you program the PC to send to it.
    – Majenko
    Commented Aug 27, 2016 at 13:50
  • Ok, but what if could find a way to direct the PC to send the data to me, by sending commands when emulating a mouse and or keyboard.
    – AstronAUT
    Commented Aug 27, 2016 at 13:56
  • Then you can possibly tell the PC to tell you things. As long as you already know what the PC is and what/how to instruct it to tell you the right things.
    – Majenko
    Commented Aug 27, 2016 at 14:15
  • @AstronAUT Yes, if you emulate the keyboard to send keystrokes to run a command (hardcoded or from a network share/trusted network location) you can select a command that reports the desired information to some network server.
    – nanofarad
    Commented Aug 27, 2016 at 14:49
  • stackoverflow.com/questions/31165217/avr-usb-detect-os
    – Gerben
    Commented Aug 27, 2016 at 14:57

1 Answer 1


No you cannot. Arduino communicates to pc via UART so there must be a host which can send or receive the data. You have to install software on the host computer which can send and receive data to the com port to which arduino is connected to.

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.