Interfacing/Controlling JRK USB with a PC

Hey All,

I am building what I would call an XY table. It is a simple set up that moves in the X and Y directions of the XYZ coordinates if the XY planes are parallel to a table top. I will have two DC motors (or two stepper motors?) that will drive belts that will move the mechanical part of the system to different positions. The set up is no bigger then 30 inches (x directin) by 18 inches (y direction) in the XY plane and I haven’t yet determined the overall height of the set up.

I have not yet selected what motors I have used, thus I do not have a limitations on which motor controller I am using because I can fit motors to work with the controller. I am most interested in the Pololu Jrk USB Motor Controller with Feedback.

Here is where I need the assistance and knowledge, I want to be able to have the XY table be controlled by coordinates entered on a laptop. Meaning, I want to enter a set of coordinates on a laptop and have the XY table be moved to that set of coordinates via two DC motors that are being controlled through a JRK (or do I need two JRK’s?). I know there are multiple ways of doing this. Labview is readily available and so that could be a solution. I just don’t have any idea on what computer software or program I can use to do this function and how to interface it correct through USB to the controller. The software can be as simple as having two empty boxes and having to enter in a number into each for the correct XY coordinates or the kind of set up where I click on a virtual screen that takes correlates to the correct coordinates. The more simple it is, the better. Suggestions?

Also, I am an mechanical engineering student so I am familiar with the motors and controllers, just not the PC portion.

If I need to clarify on anything, please let me know.


Hello, Markus.

A jrk can only control one motor, so you would definitely need two of them. Also, you would need to provide some way for the jrk to know the position of the part that it is controlling. To do this you would probably want a potentiometer for detecting the X position and another one for detecting a Y position.

Once you get your two feedback systems set up and configure the jrks properly, you can simply connect both jrks to your laptop, run two instances of the Jrk Configuration Utility software, and command them to go to different positions by typing in numbers.

You might want to look into using stepper motors instead of brushed DC motors because with stepper motors you can know exactly how much the motor has turned without hooking up a potentiometer. The jrk can only control brushed DC motors, not stepper motors. There are a lot of projects out there that are similar to yours so you should look at what they have done. One example is the MakerBot, which uses stepper motors:



Thanks for the suggestion. It seems like using a DC motor could almost be easier to set up and get going then a stepper motor though.

So, not to switch the topic of my post, if I go with two stepper motors and two drivers. How would you suggest interfacing these with a PC? Would the simpler route be to have an PC controlled Arduino that is then controlling the stepper motor drivers?

If I went with two stepper motors, what stepper motor driver(s) would you suggest?

Thank you for the information. I am just trying to figure out as much information as possible before I begin this build.


If you are already familiar with Arduino, then yes, that would probably be the easiest way to control two stepper motor drivers from a computer.

You’re going to have to think about how much current you want to provide to your stepper motors and pick a driver based on that, so I can’t give you a firm recommendation of what driver to use. Our A4988 Stepper Motor Driver Carrier is pretty popular and works in many different applications so it might be sufficient for you.