Arduino VRC Pro Adapter DIY

If you would like to start racing RC cars, but you don't want to  jump in, crash and get marshaled on nearly every corner, which will usually result in pissing everybody off that you happen to run off the track, or cause them to lose their position.  VRC Pro is a great program / game to get started with your practicing before hitting the track.


What is VRC Pro?

VRC Pro is simulator that will allow you to make changes to your car (if you wish) and race a multitude of tracks.  This program is used by many to keep their skills sharp in the off season or if they don't have the time to drive to the track, set up, and spend cash on fuel and consumables (tires, glow plugs, other parts).



So What The Hell Does The "Dongle" Do?

The dongle will allow you to use your own RC Radio to control the cars in the game.  Many RC controllers will allow you to create a multitude of profiles for various cars (usually up to 10 cars).  So using the radio that your used to and love, will be beneficial in keeping cost low and will allow you to use your favorite controller.


The information I am going to provide hopefully fills in the gaps that Gary's MicroPanoply and kekse23.de seem to have missed.  VRC offers these dongles at a price of $60. Gary on the other hand offers these premade arduino units for sale at a significantly lower price, and are a bargain if you do not want to deal with the technicalities of building one (I feel they are also superior to the VRC modules).  To be frank, it took me a bit of research and looking back and forth between plans, youtube videos, and different boards to figure out how it all worked.  It is only 6 wires, so how hard can it be?


Let me drop this right here:  If you plan to purchase the materials to build one, do so through our links below.  The links below are Amazon affiliate links, and buying through these links helps the Hoot Builds blog and the Hoot Builds youtube channel at NO EXTRA CHARGE TO YOU.


Things You Will Need

  • The Arduino IDE 
    • Q) WTF is the IDE?
    • A)  The IDE is the software used to view, edit, and upload the program into your little Arduino board.
  • RCUSB4.zip (the program that will be ran on the Arduino)(An arduino program can also be called a "sketch") 
  • Arduino Joystick Library  This is hosted on GitHub. (The above program uses this Library. we must have this library in order to run the RCUSB4 sketch / program to run.)
  • 2  3 pin standard servo lead  (two leads) or 1 3 pin standard servo lead and 3 single wire leads
  • Arduino Micro with the ATmega16U4 / ATmega32U4 microcontroller  (These include Leonardo, Micro, Micro Pro, Micro SS, etc)
  • Soldering Iron with a fine tip
  • Wire Snips
  • Soldering flux
  • Shrink tube (3/4 inch)
  •  Lighter or heat gun to shrink the shrink tube
  • Receiver that will work with your specific controller 2-4 channel

Overview of the things you will need to do

  • Start the Arduino IDE Program
  • Open the RCUSB4 program / sketch
  • Add the Arduino Joystick Library to your sketch
  • Verify that the correct board is selected in Tools=>Board=>Board Manager
  • Verify that the correct com port is selected in Tools=>Port=>Serial Port
  • Compile / Verify the sketch 
  • Load this program or sketch onto your Arduino Micro Pro or similar board that has the ATmega32U4 microcontroller, after its loaded unplug your Arduino from the USB cable.
  • Solder the the leads to the correct pinouts of the arduino board
  • Setup a profile for the game on the Transmitter, that way we don't have to mess with setting used to control a physical vehicle we race or drive.
  • Plug the leads into the receiver
  • Plug the Arduino back into the usb cable
  • Fire up the windows joystick and controller utility (Set up USB game controllers)
  • Go through the calibration procedure
  • After its all calibrated we can then fire up the game, go to options and then controller options to do other settings.
Note: There are a few ways that this can be done, so keep reading before you get started.


  • VCC provides power for the receiver +5 Volts
  • GND is for the receiver Ground
  • TX0 Is for Channel 3 signal
  • RX1 is for Channel 4 signal
  • 2  is for Channel 2 signal
  • 3 is for Channel 1 signal

The image below shows the wiring for my setup

  • Green is Channel 1 signal and is connected to pinout number 3
  • White is Channel 2 signal and is connected to pinout number 2
  • Yellow is Channel 3 signal and is connected to pinout TX0
  • Orange is Channel 4 signal and is connected to pinout RX1
  • Red is Power and is connected to pinout VCC
  • Black is Ground and is connected to pinout GND


2 ways of wiring it

On most receivers, or at least every one that I have seen the connectors are arranged in rows and columns.  The columns consist of Signal, Power (usually 4.8v to 10v, and Ground terminals).  The rows consist of the Channels. 





Channel 1 is usually designated as steering, channel 2 is designated as throttle.  Channel 2 is usually where the receiver gets its power from the speed controller (on electric vehicles).  BUT, I notice that with my receiver ALL of the power and ground terminals are bonded internally. Therefor it doesn't matter what row I plug the power and ground into.  The receiver gets power no matter what row the power is plugged into. ( I am pretty confident that most receivers are this way) BUT some receivers may not be.  As a result I bring up the L and T formation, as picture up above with the Green, White, Yellow, and Orange wires as the signal wires. concept with the connectors, just in case you are paranoid about which row the receiver handles its power and ground.

On the other hand another way to wire it could be like in a sort of L configuration on the receiver, as shown below.

The only thing left to do is to hook it up to the computer and calibrate it.

Open up the USB game controllers tool.

Go to properties.

In the settings tab we can start our calibration procedure.

Step through the calibration steps.

At this point it should be calibrated.   Click OK.



Comments