Hello Internet Arduino enthusiasts!

I'm totally new to Arduino and as my first project, I'd like to make a controller connected to computer A (the master) and computers B and C as 'slaves'.

The master would simply send commands as USB mouse and USB keyboard inputs to slave computers through an Arduino controller. Think of it as a hardware KVM switch (without the V(ideo)).

Now, I'm planning to work on that during the Christmas vacations, so I need to order the parts now to receive them in time.

I was thinking I could use these parts:

  1. Arduino Due (because it has the capability to send keyboard and mouse input)
  2. 2 SparkFun FTDI Basic Breakout - 5V, one for the mouse, one for the keyboard (per target computer) (https://www.sparkfun.com/products/9716) (because I can convert it to a 3.3v, what the Due is using)

Please consider:

  • The price is not really an issue for now.
  • I'm not worried to much about the programming.
  • I'll figure out how to make it work once I have the time and the items.
  • I know someone who has a starter kit from SparkFun, and there is an electronic store closeby, so I'm not worried about the wires.

Will I be able to make what I'd like with those basic parts, or am I missing something?


1 Answer 1


You need:

  • two MCUs that can act as USB devices (one per slave),

  • some way of getting the commands from the master to the MCUs

That means two Arduino Dues (or Arduino Leonardos, or SparkFun ATmega32U4 breakout boards, etc.) and one USB device of some sort that you can talk to and have send commands to the MCUs.

And perhaps something to transport the commands from the master to the slaves, but you need to think about the programming for that first since the transport and the programming will be very closely connected.

  • Ok, so if that someone I mentioned earlier has an Arduino Uno, I would need two Due/Leonardo, and a bunch of wires and something like this (arduino.cc/en/Tutorial/MasterWriter) to make them communicate together? Computer A would tell Uno to tell Dues/Leonardos to tell computer B and C how to move the mouse/keyboard, right? Thanks for your input! Dec 16, 2014 at 12:25
  • I2C is not the right protocol to use for this. Normally it would be done via UART, with conversion to RS-485, ZigBee, etc. if called for. Dec 16, 2014 at 16:08

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.