Code for RAMPS REPRAP Bipolar stepper motors

I basically have this setup:

The motors are not used for a 3d printer its something else, but i'm just looking to see if there is any generic code for this...if anyone can help?


Didn't it come with any documentation? I would have expected it to, and I'd have expected the documentation to be available online too (I'm disappointed that the page you linked to doesn't include it).

If the Arduino suppliers have neglected to document their product I think your first option is to contact them to complain and ask them to supply the missing information - you can't be expected to reverse-engineer this for yourself. If they fail to do that (and you decide not to return the goods) your next option would be to look at the data sheet and application guide for the Pololu A4988 Stepper Driver boards used to see what pins they provide and what they're used for, and then follow the PCB traces on the RAMPS board to see which pins each of those is connected to on the Arduino. Frankly though in that situation I'd regard this as an Arduino customer support issue - I would not consider the goods were fit for purpose if they were supplied without the data needed to use them.

If you look on the RepRap forum you will find links to several programs that should work with that board. Maybe the program GRBL will also work with it.

If you want to write your own code it should not be difficult to get the motors to move. You just need to provide an appropriate sequence of pulses to the STEP pin for the relevant motor. And you should be able to use the AccelStepper library with it.

Getting the motors to move in a co-ordinated way as they need to do for CNC or 3D printing is a little more complicated.

The real challenge is to get the sequence of instructions to make the various motors cause a tool to follow a path from a CAD drawing - and that is where GRBL and the 3D printer programs come in. Or you could write your own equivalent.

We could probably give you better advice if you explain what you want to do with the board.


i'm running two independent pumps, that are driving by stepper motors, so i just simply need to give them an rpm...which i believe is simply. It's just pin identification im not positive about...

It may be that RAMPS is a standard and the pinouts are available elsewhere on the web. Google ramps pinout ?

If the worst comes to the worst you should be able to identify the step and direction pins from the driver boards. Then pull the driver board out and use a multimeter to see which Arduino pin connects to that driver pin. Tedious, but doable unless there are intervening integrated circuits on the Ramps board.