USB CNC Controller – PoKeys57CNCdb25 User’s manual – part1

Introduction of USB CNC Controllers

USB CNC Controller (PoKeys products) line consists of simple, easy-to-use USB and network devices with the extended list of features making them powerful input/output devices.

PoKeys57CNCdb25 is an USB device and is the smallest of the PoKeys family, designed especially for use with CNC machines with existing LPT (parallel printer) port based control signals input connector. It allows a quick migration from LPT to USB bus. Although small, the device is adjustable and as such requires no complex knowledge on device programming. PoKeys57CNCdb25 can control up to 4 STEP/DIR signal driven motors (stepper motors, servo drives, etc.) in various applications. The device features 12 digital outputs and 5 digital inputs in total. Four of the digital outputs can be configured to operate as PWM (pulse-width modulated) output. PoKeys USB products integrate support for virtual USB keyboard and USB joystick, which can be used to emulate a standard USB keyboard. Digital input pins can be mapped to virtual keyboard and joystick keys. Configuration is simple by using our intuitive graphical PoKeys configuration application, where each function can also be tested. Third-party application developers that are adding the support for PoKeys devices, are encouraged to use the supplied communication DLL that can be simply used in the different .NET framework based applications and various other programming languages that provide support for ActiveX interface. There is even an open-source cross-platform C library available at To aid developers that are communicating with PoKeys devices on the low-level, the extensive documentation on device communication protocol can be downloaded free of charge from the product webpage.


  • Compatible with USB 1.1/2.0 HID standard,
  • standard English USB keyboard simulation (with triggering support for up/down keys), – 12 digital outputs (8 are used for step/direction output signals)
  • digital inputs with pull-up resistors
  • high performance 4-axis 125 kHz pulse engine,
  • up to 4 high-speed fully configurable PWM outputs (25MHz PWM timer)
  • fail-safe support in case of communication interruption,
  • intuitive and user-friendly software,
  • third-party support via communication DLL library and extensive protocol specification document that allows porting to other systems.

Device hardware description

PoKeys57CNCdb25 device is built into the standard male DB-25 connector and comes preinstalled with ~1.7 m long USB cable.

PoKeys57CNCdb25 connector pinout
USB CNC Controller – PoKeys57CNCdb25 connector pinout

Pin types

D25 connector
USB cnc controller – D25 connector
Digital input with filtering
Digital input with filtering
5 V digital output
5 V digital output
USB cnc controller Environment specifications
USB cnc controller Environment specifications

Requirements for the USB CNC Controller PoKeys57CNCdb25

  • one available USB 1.1 or USB 2.0 port,
  • USB HID device driver enabled operating system (Windows 98 SE/ME/2000/XP/Vista/7/8.1/10, Linux, Mac OS) and PoKeys USB driver installed
  • Included software requires Windows XP/Vista/7/8/8.1/10 with .NET framework 3.5 installed.


PoKeys57CNCdb25 is a USB 1.1/2.0 compliant device.

Step 1: Locate a free USB 2.0 port on your computer (1) and connect PoKeys57CNCdb25 board (2) to it

Step 2: Install PoKeys software

Step 3: Open PoKeys application, connect to your PoKeys57CNCdb25 device and enable Fast USB interface (go to Settings > Enable Fast USB interface).

Step 4: Remove the PoKeys57CNCdb25 device cable from your computer and insert it again. The computer will find a new device and search for drivers. See FAQ section of the manual if driver installation fails


Mach4 setup

  • of PoKeys57CNCdb25 device in Mach4 is simple. Install the latest Mach4 software and download the PoKeys plugin for Mach4 from PoLabs website ( Follow the instructions in the manual provided with the plugin. Short overview of the procedure:
  • If you haven’t yet, install PoKeys USB driver – use PoKeys setup package and select ‘USB driver’ in the installation options (the USB driver is installed by default)
  • Copy the Mach4PoKeysPlugin.m4pw and Mach4PoKeysPlugin.sig into Mach4’s plugins folder
  • Connect the PoKeys57CNCdb25 to your CNC using the DB-25 connector, then connect it to your PC via USB (if not done earlier)
  • Start Mach4 and wait for the Mach4 to load completely. During loading, PoKeys welcome screen will appear offering to open a new device wizard. Use this to configure your PoKeys57CNCdb25 device
  • Follow the steps on the screen
  • After configuration is done, restart Mach4. PoKeys will automatically be selected as default motion controller. Open Configure > Mach, switch to Axis mapping and assign motors to your CNC machine axes.
  • Configure other parameters to adjust Mach4 to your machine

Mach3 setup

PoKeys57CNCdb25 operation is supported by the latest Mach3 plugin. Select ‘External 4ch without IO’ in Pulse engine settings in plugin configuration dialog for the PoKeys device you have.

In the next article, we will cover PoKeys configuration options which are described in the PoKeys57CNCdb25 manual.

More information about the product USB CNC controller – PoKeys57CNCdb25 on our webshop

More about

If you need information about Polabs – PoKeys products, here are some links:

Related Posts

8 channel Smart relay module board PoRelay8...
8 channel relay module board PoRelay8 allows expanding the number...
Read more
VID6606 - A miniature stepper motor driver...
PoStepVID6606 is a new product in our series of stepper...
Read more
Confusing PoKeys57CNC pinout explained
This blog article is mostly to explain the confusing PoKeys57CNC...
Read more
Slovenščina »