Using Active Low Stepper Drivers with the PicoCNC
Typical stepper drivers expose both the positive and negative inputs of the opto-couplers but some older drivers do not. They often require a "pull down" interface where the inputs are +V and the step/direction/enable inputs which are pulled to 0V to trigger. This blog describes how you can use these drivers with the PicoCNC.
Study the diagram below. It shows the connections for the A Axis. Duplicate this for all axes you will use.
Note that this is specifically for the IMS-483 stepper driver and shows that driver's electrical interface but is applicable to any driver with a similar interface. A common ground connection is not needed. You can use any source of +5V, there are several on the PicoCNC board, the one shown is just for illustration. You may also use an external source of +5V if all the ones on the PicoCNC are in use but must have a common ground with the PicoCNC. When using the PicoCNC as the +5V source, I recommend using a bit of hot glue to hold the connector in place.
In grblHAL, you will need to clear Enable Invert ($4) (it may be that by default). You also may need to set Step Pulse Invert ($2) and Step Direction Invert ($3), depending on your stepper motors. Screen shots below are from ioSender, your GCode Sender interfaces will be different.
On the Enable signal, some drivers enable the motor when there is a signal present and others when it is absent. Test your device. If your setting does not cause the motor to become harder to move by hand (and the motor does not move when commanded), change the Enable Invert setting.
A technical note. The pull-down interface style was used by older stepper drivers because an open collector interface was inexpensive, only requiring a single transistor. Modern controllers are able to use push-pull logic and thus can drive high or low signal voltage levels. Most modern stepper drivers expose both the positive and negative side of the opto-isolator's input and can thus be used easily with either kind of controller interface. As always, feel free to ask questions.