XBox 360 Controller Pro for UCCNC

User Manual — Version 3.100

Manual revision: October 11, 2026
www.craftycnc.com

1. Introduction

XBox 360 Controller Pro is a plugin for the UCCNC machine-control software. It turns a wired or wireless-receiver XBox 360 controller into a hand-held pendant:

Requirements

Safety A hand-held controller moves a real machine. Test every assignment with the machine clear and the axes away from their limits, keep your hand on the emergency stop, and use the trigger safety (section 6) so the sticks only jog while a trigger is held. The plugin is provided without warranty of any kind; you use it at your own risk.

2. Installation

2.1 New installation

  1. Extract all files from the zip archive.
  2. Copy XBoxcontrollerPro.dll into the plugins folder of your UCCNC installation (for example C:\UCCNC\plugins\). Also copy the XBoxControllerPro folder into plugins; it holds this manual, which the Help tab opens.
  3. Start UCCNC, open the plugin configuration, and tick Enable and Call startup for the XBox plugin. Restart UCCNC.
UCCNC Plugins configuration window
Figure 1. Enabling the plugin in UCCNC.

When there are no saved settings, the plugin also asks whether you work in inch or metric and loads matching starting values: left stick on X and Y, right stick on Z with its X movement picking the jog step (a trigger must be held), cubed stick response, the D-pad step-jogging X and Y, the shoulder buttons step-jogging Z, Start toggling the mapping overlay, and the plugin starting in pendant mode. Jogging itself stays off until you enable it. You can instead choose a settings file, or skip and start from blank controls. Starting values you saved with Save as defaults are used without asking.

On first run the plugin creates its settings folder, plugins\XBoxControllerPro\Settings\, and a 45-day demonstration period starts (see section 15).

2.2 Updating from version 3.000 or earlier

Replace XBoxcontrollerPro.dll in the plugins folder with the new one, and leave your old xboxcontroller.xml and xboxcontroller_PROFILENAME.xml settings files where they are, in the plugins folder. The first time version 3.100 runs it reads them; it never changes them. It then saves your settings in the new location (plugins\XBoxControllerPro\Settings\), one file per UCCNC profile. Controls that no longer exist in this version are skipped. Check your settings once and press Save Settings.

Also copy the XBoxControllerPro folder that comes with the plugin into the plugins folder. It holds this manual (XBoxControllerPro\Manual\), which the Open the manual button on the Help tab opens.

If you are coming from version 2, also delete the old xboxcontroller.dll from the plugins folder so UCCNC does not list both plugins.

2.3 Opening the plugin window

The plugin window can be hidden to the notification area (system tray). Right-click the tray icon and choose Show Plugin to bring it back, or double-click the icon to enable or disable jogging. You can also assign a UCCNC button number that opens the plugin — see section 13.

3. The plugin window

Plugin window, Controls tab
Figure 2. The plugin window, Controls tab.

The window is a row of tabs along the top, a mode selector and a stick speed preset at the bottom, and a status bar.

TabWhat it is for
ControlsLive view of the controller: indicator lights for every button, the main enable switches, and the stick and trigger values. Use this tab to check that the controller is being read.
ButtonsUCCNC button functions for A, B, X, Y, Start and the two stick clicks (section 8).
DPad\ShoulderStep-jog axes or custom functions for the D-pad and shoulder buttons (section 9).
Left Stick, Right StickAxis assignment, deadband, velocity rate and maximum velocities for each stick (section 5).
TriggersTrigger behavior and the jog safety (section 6).
Step IncrementCustom jog step sizes (section 7).
Misc SettingsStartup behavior, polling rate, info messages, settings files, and the button mapping overlay and setup menu (section 13).
Status BarThe thin status bar along a screen edge: where it sits, how it looks, and what it shows (section 3.6).
MouseModePointer and scroll speed (section 12).
LicenseDemo status and license key (section 15).
About, HelpVersion information and the update check; the Help tab opens this manual (section 3.5).

3.1 Enable switches and indicator lights

On the Controls tab, the main Enable Jogging with Controller switch and the Enable Left Stick and Enable Right Stick switches decide whether stick and button functions are sent to UCCNC. The round indicator for each button lights green while that button is pressed. The indicators are display only: they light even when jogging is disabled, so you can confirm the controller is being read without moving the machine.

3.2 Mode selector

The mode selector shows the current mode — Pendant, Setup or Mouse — and can be used to change it with the mouse. On the controller, the Back button changes mode (section 4).

3.3 Stick speed preset

Two sets of stick maximum velocities (Group 1 and Group 2) are defined on the Left Stick and Right Stick tabs. The Stick Speed Preset box (Group 1 Velocity Preset or Group 2 Velocity Preset) selects which group is active. The same choice is available from the setup menu.

3.4 Status bar

The status bar shows whether the controller is connected and how fast the plugin’s control loop is running, for example Loop cycling @: 25 Hz. Hover the mouse over the rate to see how long each pass of the loop takes. The rate depends on the Polling rate setting (section 13.1). If the bar shows “Loop Fault” or “Error Updating Control Values”, see Troubleshooting.

3.5 The About and Help tabs

The About tab shows the plugin version and contact details. Its Check for new version button looks online for a newer release and tells you the result; a line under the button shows when the last check ran and what it found. The plugin also checks by itself each time it starts, in the background, and only speaks up if a newer version is available (turn this off with Check for new version on startup on the Misc Settings tab). If the check cannot reach the internet it says so and carries on.

About tab with the Check for new version button
Figure 2a. The About tab.

The Help tab has one button, Open the manual, which opens this manual in your web browser. The manual is installed with the plugin in plugins\XBoxControllerPro\Manual\.

Help tab with the Open the manual button
Figure 2b. The Help tab.

3.6 The status bar

The status bar is a thin bar along one edge of the screen that shows the plugin’s state at a glance, so you can see it from across the machine without opening the plugin window. It sits in front of UCCNC, and in front of the Windows taskbar, without taking the keyboard focus from UCCNC. It is switched off until you tick Show the status bar on the Status Bar tab. It appears on the main (primary) monitor.

The status bar in pendant mode, with RESET, in mouse mode and in setup mode
Figure 2c. The status bar: pendant mode, pendant mode with RESET showing, mouse mode, and setup mode with actions blocked.

From left to right it can show:

ItemShows
XBoxControllerProThe plugin name, so it is clear what the bar belongs to.
E-STOP / RESETA flashing red chip while UCCNC’s emergency stop input is active, or the machine is in reset.
PENDANT / MOUSE / SETUPThe current mode. The whole bar is also coloured by mode: green for pendant, blue for mouse, amber for setup.
StepThe jog step size currently selected, for example Step: .010.
Speed setThe stick speed set in use, with the top speed of each axis the sticks drive, for example Speed set: 1 (X 1200, Y 1200, Z 600 unit/min).
SticksSticks: ON, OFF (amber), LEFT ONLY or RIGHT ONLY.
PadPad connected, or an amber NO PAD — or NO XINPUT PAD when Windows can see a gamepad that is not in XInput mode (see Troubleshooting).
ACTIONS BLOCKEDAn amber chip while the button mapping overlay is blocking the controller (section 10.5).
HOLDThe long-press hold timer, described below.

The hold timer

When you press and hold a button that has a function assigned to its long press, the bar turns into a countdown that tells you what you are about to do: HOLD 1.4  >  ZeroX (100). A lighter fill sweeps along the bar as the hold time runs out. When the long press has been reached the bar turns green and reads RELEASE > ZeroX (100): let go and that function runs. Let go before then and it does not. A button with nothing assigned to its long press gets no countdown. The countdown replaces the big countdown banner while the status bar is showing; with the bar hidden, or the hold timer item switched off, the banner is used instead (and it names the function too).

The Status Bar tab

Status Bar tab
Figure 2d. The Status Bar tab.

The tab has two groups. Status bar: Show the status bar; Position (top, bottom, left or right edge — left and right give a narrow vertical bar with the text turned to run along it); Only as wide as its text (otherwise the bar spans the whole edge); Colour the bar by mode; Click-through (the bar ignores the mouse, so whatever is behind it can still be clicked); Opacity; and Text size (the bar’s thickness follows it). Show: a tick for each item above, so the bar can be trimmed to just what you want.

4. Modes and the Back button

The plugin has three modes. The Back button moves between them:

ModeWhat the controller does
Pendant modeNormal operation. Sticks jog, buttons run the UCCNC functions you assigned.
Setup modeShows the quick-pick setup menu (section 11). Jogging and your button assignments are switched off while the menu is open.
Mouse modeThe controller moves the mouse pointer and sends keys (section 12). Jogging and your button assignments are switched off.
PressFrom pendant modeFrom setup modeFrom mouse mode
Short press BackOpens the setup menuCloses the menu, back to pendantNo change
Long press Back (hold)Switches to mouse modeNo changeBack to pendant mode

A message on the screen confirms each change (“Setup Mode On”, “Mouse Mode On”, “Pendant Mode On”). When you return to pendant mode the enable switches are put back the way you had them. A long press is a hold of at least the hold time set on the Buttons tab; the controller vibrates once when the hold time is reached, and an optional countdown overlay shows the time remaining.

Back button mode switching
Figure 3. Changing modes with the Back button.

To always start in pendant mode, tick Startup in Pendant Mode on the Misc Settings tab.

5. Jogging with the sticks

The left stick and right stick each jog two axes (horizontal and vertical movement). Each stick has its own tab with identical controls.

Left Stick tab
Figure 4. The Left Stick tab.
Right Stick tab
Figure 4a. The Right Stick tab.

5.1 Assigning axes

Each direction of each stick has an axis pulldown: Xaxis to Caxis (X, Y, Z, A, B, C). Choose a Rev_ axis (for example Rev_Zaxis) to jog the opposite way. The right stick’s horizontal movement can instead be used as the jog step selector (section 7).

5.2 Mixed axis jogging

By default a stick jogs one axis at a time — whichever direction is pushed further. Tick Allowed mixed axis velocity to allow both axes of a stick to move at once (combined diagonal movement, each axis at its own speed).

5.3 Deadband

The deadband is the part of the stick’s travel around center that is ignored, as a fraction of full travel (0.02 = 2%). Raise it if an axis creeps when you let go of the stick. Speed ramps up from the edge of the deadband, so there is no jump when the stick leaves it.

5.4 Velocity rate

The velocity rate decides how stick position becomes speed:

RateBehavior
LinearSpeed rises in direct proportion to how far the stick is pushed.
SquaredSpeed rises with the square of the deflection: finer control near center, while full deflection still reaches full speed.
CubedSpeed rises with the cube of the deflection: the finest control at low speeds, while full deflection still reaches full speed.

5.5 Maximum velocities and the two groups

By default full stick deflection gives 100% of the axis velocity set in UCCNC. Tick Use Max Vel. Setpoints to set your own limit in units per minute for each stick direction:

The plugin never commands an axis above 100% of its UCCNC velocity.

Tip Set the X and Y axis maximum velocities in UCCNC to the same value. The plugin recommends this when it starts, because the left stick’s two directions share one speed scale.

6. Triggers and the jog safety

The Triggers tab decides what the two triggers do. Choose one option:

OptionBehavior
Double Trigger Enable JogBoth triggers must be held at the same time to allow jogging with either stick. Releasing either trigger stops jogging.
Single Trigger Enable JogEither one trigger must be held to allow jogging with either stick.
Triggers as Velocity IncreaserNo safety lockout. The left trigger acts as a 1–2× speed multiplier for the left stick and the right trigger as a 1–2× multiplier for the right stick. With the trigger released the stick reaches up to 50% of the set maximum speed; pulling the trigger raises that toward 100%.
Triggers tab
Figure 4b. The Triggers tab.
Recommended Use Double or Single Trigger Enable Jog. With the safety on, letting go of the triggers (or dropping the controller) stops all stick jogging at once. Triggers as Velocity Increaser has no such lockout.

7. Step jogging and jog step sizes

7.1 Selecting the jog step with the right stick

If you assign the right stick’s horizontal movement to JogStep (instead of an axis), moving the stick left or right and releasing it selects one of four step sizes:

Stick movement, then releaseStepDefault size
Full leftStep 1.001
Half leftStep 2.010
Half rightStep 3.100
Full rightStep 41.000

Two options on the Step Increment tab refine this: Require Trigger to enable Jog Step selection with stick (a trigger must be held to change the step) and Vibrate step jog selection (the controller buzzes the step number: one buzz for step 1 up to four for step 4). The step you choose is also shown in the status bar (section 3.6) and in the setup menu. While the stick is mostly sideways, picking a step, the right stick’s vertical axis stays still unless Allowed mixed axis velocity is ticked.

7.2 Custom step sizes

On the Step Increment tab, enter your own size for any of the four positions. Leave a box blank to keep UCCNC’s default. For example, entering .020 in Jog step 2 replaces the default .010. Choose which step is active with the step radio buttons on this tab or from the setup menu.

Step Increment tab
Figure 5. The Step Increment tab.

8. Assigning the buttons

The Buttons tab lists A, B, X, Y, Start, the left-stick click and the right-stick click. Each has three boxes:

ColumnWhen it runs
On Press FunctionsThe instant the button goes down.
Release Press FunctionsThe instant the button is released after a short press (shorter than the hold time).
Long Press and Release FunctionsWhen the button is released after being held at least the hold time.
Buttons tab
Figure 6. The Buttons tab.

8.1 Choosing a UCCNC function

Each box is a pulldown of UCCNC’s button functions, shown by name with the button number in brackets — for example ZeroX (100) or HomeZ (109). Click the arrow to scroll the list (it is in button-number order), or click in the box and start typing a function name; the list completes it for you. Hover over a box to see what the chosen function does. The functions that appear come from your own UCCNC installation (Documentation\Buttons_by_number.htm), so the list always matches your UCCNC version; if that file cannot be found, the plugin uses a built-in list.

You can still type a plain button number (such as 100) — it is shown as its function name when you leave the box, and older settings files that hold plain numbers load as before. A number that is not in the list is kept as typed. Press Show 'button codes' help file to open the full UCCNC list with descriptions. The function runs only in pendant mode and only while the Enable switch is on.

Your own macros. At the end of each list the plugin adds the user macros from your current UCCNC profile: every M20000–M21999 macro file in that profile’s macro folder (Profiles\Macro_<profile name>), shown as M20003 Camera xy offset macro (20003). The text after the macro number is the first comment line of the macro file, so a short comment at the top of each macro makes the list much easier to use; a macro with no comment shows only its number. Choosing one runs that macro (UCCNC runs macro Mn when button n is pressed). Macros are read when the plugin window opens, so after adding or renaming a macro file, close and reopen the plugin window. Copies such as M20202 - Copy.txt are ignored.

User macros at the end of a button function pulldown
Figure 6b. Your profile’s macros at the end of a pulldown, with the first comment line of each macro file as its description.
Button function pulldown
Figure 6a. The top of a function pulldown: the stick commands, the Mapping Overlay entries, then UCCNC’s functions by name.
Jog and stop pairs If you put a function that starts movement (for example an axis jog) in the Press box, put the matching stop function in the Release box, or the axis will keep moving after you let go. The long-press box runs once on release, so it suits actions like Reset or turning feed hold off, where a deliberate hold avoids accidents.

8.2 Hold time

The hold time (in seconds) is how long a button must be held to count as a long press. When it is reached the controller vibrates briefly. Tick Visual Indicate Long Press on the Misc Settings tab to also show a countdown while the button is held, together with the function the long press will run. The countdown and the buzz only happen for a button that has a function assigned to its Long Press and Release box, so a button with nothing there stays quiet. With the status bar showing, the countdown appears on the bar instead of as a banner (section 3.6).

8.3 Start button

Besides button numbers, the Start button boxes accept Show/Hide Plugin, which minimizes or restores the plugin window. Start works in every mode, so you can always bring the window back.

8.4 Stick clicks

Pressing a stick in is a button. As well as a button number, the stick-click boxes offer these commands in their pulldown:

CommandEffect
Stick Speed 1, Stick Speed 2, Stick Speed ToggleSelect stick velocity Group 1, Group 2, or switch between them.
Stick Enable All, Stick Disable All, Stick Enable All ToggleSwitch both sticks (and the main enable) on, off, or toggle them.
Stick Enable, Stick Disable, Stick Enable ToggleSwitch only the stick that was clicked on, off, or toggle it.

A message on the screen confirms each change. These commands work in pendant mode.

8.5 Button mapping overlay entries

With the stick commands at the top of every function pulldown (on the Buttons tab and, with Customize on, the DPad\Shoulder tab) are three entries that show the button mapping overlay (section 10):

EntryUse it inEffect
Mapping Overlay (hold)the On Press boxThe overlay is shown while you hold the button and hidden when you let go.
Mapping Overlay (toggle)any boxShows the overlay if it is hidden, hides it if it is shown.
Mapping Overlay (menu)any boxSwitches between the overlay and the setup menu (section 11).

They work in pendant mode; in mouse and setup mode only the Start button’s boxes are active. Start is a good choice, because it works in every mode.

9. D-pad and shoulder buttons

The D-pad (up, down, left, right) and the two shoulder buttons (LB, RB) can work in one of two ways, chosen by Customize DPad/Shoulder on the DPad\Shoulder tab.

9.1 Step jog (Customize off)

Each pair of buttons step-jogs one axis. Pick the axis for the D-pad up/down pair, the D-pad left/right pair and the shoulder pair. One button jogs the axis one direction, its partner the opposite direction; a Rev_ axis swaps the two. One press moves one step of the active jog step size (section 7), and the plugin returns UCCNC to step or continuous jogging mode afterwards, whichever it was in before.

DPad\Shoulder tab, Customize off
Figure 7. The DPad\Shoulder tab with Customize off (step jog).

9.2 Custom functions (Customize on)

Each of the six buttons gets Press, Release and Long Press boxes, exactly like the buttons in section 8.

DPad\Shoulder tab, Customize on
Figure 7a. The DPad\Shoulder tab in custom mode.

10. The button mapping overlay

With many buttons, two sticks and three modes it is easy to forget what is assigned where. The button mapping overlay is a see-through panel, shown on top of UCCNC from the controller, that tells you what every stick and button does right now. It is built from your current settings each time, so it is always up to date, and it follows the current mode: it shows your assignments in pendant mode and the fixed controls in mouse mode and in the setup menu. The mode is named in the title bar.

The overlay never takes the keyboard focus away from UCCNC, and it stays in front of other windows.

10.1 Showing and hiding it

Assign one of the Mapping Overlay entries (section 8.5) to a button:

To arrange it on the screen, press Show mapping on the Misc Settings tab. While it is shown that way you can drag it where you want it, and double-click it to close it. Its position is remembered.

10.2 List view and diagram view

The overlay has two looks, chosen with Mapping: diagram view on the Misc Settings tab (it can be changed while the overlay is showing). The list view groups the controls under headings: sticks, triggers, D-pad, shoulders, buttons, and Start and Back. The diagram view draws the controller with a callout for each stick, button and trigger, joined to it by a line.

Button mapping overlay, list view
Figure 8. The button mapping overlay, list view, in pendant mode. The red E-STOP at the right of the title bar shows that UCCNC’s emergency stop is active.
Button mapping overlay, diagram view
Figure 8a. The button mapping overlay, diagram view.

10.3 What it shows

10.4 Live display

In the diagram view the controls light up as you use them. A pressed button, D-pad direction, bumper or Start/Back turns orange; a trigger fills as far as you pull it; the stick knobs move with the sticks and light when clicked; and the callout for any control in use gets an orange border and line. It shows what the controller is doing whether or not the current mode acts on it, which makes it handy for checking that the controller is being read.

10.5 Blocking pad actions while it is shown

Normally the controller keeps working while the overlay is shown, so you can look at the map and carry on jogging. If you would rather press buttons to see what they do without doing it, tick Mapping: block actions. While the overlay is shown:

The status line turns orange to remind you that actions are blocked.

10.6 Appearance

On the Misc Settings tab (section 13.4): Overlay opacity (20 to 100%, used for the overlay and the setup menu), Overlay text size (which also scales the controller drawing), click-through (the overlay ignores the mouse, so you can use UCCNC straight through it; untick it to be able to drag the overlay) and Auto-hide.

Short-press Back in pendant mode to open the setup menu. It is the button mapping overlay with a Quick settings panel beside it, so you can see what the controller does while you set it up. Like the overlay it never takes the keyboard focus from UCCNC. While the menu is open the controller works only the menu: your jog and button assignments, and the mouse and keyboard output, are off. (The Start button still runs the function assigned to it.)

Setup menu: the mapping overlay with the Quick settings panel
Figure 9. The setup menu.

11.1 The Quick settings panel

RowWhat it does
Jog stepShows the four jog step sizes with the active one in brackets. Left and right pick another.
Stick speed setChoose stick velocity Group 1 or Group 2 (section 5.5). Left chooses Set 1 and right chooses Set 2 (A switches to the other one); the chosen set becomes the one in use.
Set 1 and Set 2: the four stick directionsThe maximum velocity of each stick direction in each group, labelled with the axis it drives. Left and right change the value.

Everything you change takes effect straight away. Like the rest of the settings it is kept when you press Save Settings, or when the plugin closes if Save settings on shutdown is ticked.

A velocity changes by 1 for a tap, and by larger and larger amounts the longer you hold the D-pad, so you can make a fine adjustment or cover a wide range quickly. LB and RB change it ten times as fast. Editing a set changes the stick’s live maximum velocity only if that set is the one in use.

11.2 Controls

ControllerDoes
D-pad up / downMove between rows
D-pad left / rightChange the row’s value (hold to repeat and speed up)
LB / RBChange a velocity in big steps
ASwitch the stick speed set
XDisplay only: leave the menu but keep the button mapping overlay on screen
B or YClose the menu and the overlay, back to pendant mode
Back (short press)Same: close the menu and return to pendant mode

11.3 Switching between the menu and the display

You can change between the setup menu and the display-only overlay without closing the overlay. Press X in the menu to drop to the display-only overlay (you return to pendant mode and the overlay stays up). To go from the display back into the menu, assign Mapping Overlay (menu) (section 8.5) to a button and press it; pressed again in the menu, it returns to the display. The panel needs no mouse or keyboard at any point.

The menu uses the same opacity as the overlay (Overlay opacity on the Misc Settings tab).

12. Mouse mode

Hold Back in pendant mode to switch to mouse mode, and hold it again to return. Your jog and button assignments are switched off while in mouse mode.

ControllerMouse mode action
Left stickMove the pointer. Pulling the left trigger moves it faster.
Right stickScroll wheel (vertical and horizontal)
ALeft mouse button
BRight mouse button
XEnter key
YEscape key
D-padArrow keys
RB / LBTab / Shift+Tab
Right stick clickSpace bar

The MouseMode tab has two sliders: Mouse Move Speed and Scroll Speed (slide toward Faster for quicker movement). While the button mapping overlay is shown with Mapping: block actions ticked, the pointer, clicks and keys are held (section 10.5). Press-and-hold the button you assigned to Mapping Overlay (hold), or use the toggle entry, to see this map on the screen.

MouseMode tab
Figure 10. The MouseMode tab.
Controller map in mouse mode
Figure 11. Controller map in mouse mode.

13. Misc Settings

Misc Settings tab
Figure 12. The Misc Settings tab.

The tab is arranged in four groups: General, Info messages, Settings and Button mapping overlay and setup menu.

13.1 General

SettingEffect
Startup in Pendant ModeForces pendant mode at startup.
Automatically Hide on LoadStarts with the plugin window hidden in the notification area. Combined with the setting below, you never need to see the window again once it is set up.
Automatically Enable Jog on LoadTries to switch jogging on when the plugin loads. This does nothing if no controller is found.
Show messages/warningsUntick to suppress the plugin’s pop-up warnings.
Visual Indicate Long PressShows a countdown overlay while a button is held towards a long press (section 8.2).
Save settings on shutdownSaves the settings automatically when the plugin closes.
Check for new version on startupLooks online for a newer release each time the plugin starts, in the background, and tells you only if there is one (section 3.5).
Polling rateHow often the controller is read and the jog commands are sent. UCCNC loop (25 Hz), the default, uses UCCNC’s own timer. 50 Hz and 100 Hz use a timer of the plugin’s own, which can run faster and more steadily. The status bar shows the rate that is being reached (section 3.4).

13.2 Info messages

Short messages (mode changes, jog step size changes) appear in a large on-screen message. The group sets how it looks:

SettingEffect
PositionTop, middle or bottom of the screen.
Height %How tall the message band is, as a percentage of the screen height.
Overlay Full ScreenFills the whole screen.
Fit band to textMakes the band only as wide and tall as the text instead of the full width of the screen.
Text color, Background colorClick a colour swatch to choose.
Opacity %How solid the message is.
Show for (sec)How long the message stays on screen.
Set FontChooses the font. This is the largest size the text will use.
Test OverlayShows a sample message so you can check your choices.

The text always shrinks to fit inside the band, however long the message or large the font, so none of it is cut off. The message never takes the keyboard focus from UCCNC.

13.3 Settings

ButtonWhat it does
Load SettingsReloads the saved settings file.
Config ‘Open’ Button CodeSets a UCCNC button number that opens/shows the plugin. Assign that number to your own screen button or a UCCNC hot key.
Restore backup…Puts back an earlier saved copy of the settings. A backup is made automatically whenever the settings change.
Save as defaultsUses the settings on screen as the starting values for new profiles or a new install (the license name and key are left out).
Load defaultsReplaces the settings on screen with the saved defaults. Press Save Settings afterwards to keep them.

The Save Settings button is at the bottom left of the window and saves the current settings for the active UCCNC profile.

13.4 Button mapping overlay and setup menu

SettingEffect
Show mappingShows or hides the overlay so you can place it. Drag it where you want it; double-click it to close it.
Mapping: click-throughThe overlay ignores the mouse, so UCCNC can be used right through it. Untick to be able to drag it.
Mapping: diagram viewDraws the mapping on a picture of the controller instead of as a list (section 10.2).
Mapping: block actionsWhile the overlay is shown, the controller does nothing in UCCNC (section 10.5).
Overlay opacity %How solid the overlay is, 20 to 100%. The setup menu uses the same setting.
Auto-hide (sec, 0 = off)Hides an overlay that was switched on with the toggle button after this many seconds. Zero leaves it up until you toggle it off.
Overlay text sizeText size of the overlay, in points. The controller drawing scales with it.

14. Settings files and backups

Settings are stored in plugins\XBoxControllerPro\Settings\ inside your UCCNC folder, as one file per UCCNC profile, so different machines or profiles can have different controller setups. The plugin:

To copy your setup to another PC, copy the contents of the XBoxControllerPro folder.

15. Trial and licensing

The plugin can be tried for 45 days with every feature working. The window title shows the number of days remaining. When the trial ends the plugin stops responding to the controller until it is licensed.

15.1 Buying a license

  1. With UCCNC running, a valid UCCNC license loaded and your CNCdrive motion controller connected, open the License tab and press Check License Status. The plugin shows your SN_Lic ID (a user ID built from your UCCNC license and controller).
  2. Send that ID to the plugin author (see www.craftycnc.com) to buy a license key.
  3. Paste the key you receive into the passkey box and press Validate License Key. The page then shows the plugin as licensed.
License tab
Figure 13. The License tab.
Tied to your hardware A license is issued for one UCCNC license plus one motion controller. If you replace the controller, contact the author.

16. Troubleshooting

The plugin does not appear in UCCNC’s plugin list

The plugin loads but the status bar shows “Loop Fault” and the controller does nothing

The controller is not detected, or the plugin says “Gamepad found, not in XInput mode”

The plugin reads the controller through XInput, which is how Windows talks to genuine XBox 360 and XBox One controllers and to compatible clones. Many third-party “XBox-style” pads have a second mode, DirectInput, in which Windows lists them as a generic Gamepad or USB Joystick. XInput cannot see a pad in that mode, so the plugin cannot either — whatever software is installed. When this happens the plugin tells you: the status at the bottom of the window reads Gamepad found, not in XInput mode (hover over it for the fix), the status bar shows NO XINPUT PAD, and the overlay’s status line says PAD NOT IN XINPUT MODE.

The controller is connected but jogging does nothing

An axis creeps when the stick is released

Raise that stick direction’s deadband (section 5.3).

A stick jogs the wrong way

Choose the Rev_ version of the axis for that stick direction.

An axis keeps moving after a button is released

A button that starts a jog on Press needs the matching stop function on Release (section 8.1).

My settings did not carry over from an earlier version

Make sure the old xboxcontroller.xml (and any xboxcontroller_PROFILENAME.xml) files are still in the plugins folder the first time version 3.100 runs, then press Save Settings.

The mapping overlay does not appear when I press the button

The controller does nothing while the mapping overlay is shown

Mapping: block actions on the Misc Settings tab is ticked. The status line shows PAD ACTIONS BLOCKED in orange. Untick the option if you want the controller to keep working with the overlay up (section 10.5).

The status bar does not appear

The version check says it could not reach the version file

The PC is offline, or the website could not be reached. Nothing is wrong with the plugin; try again later with the Check for new version button on the About tab.

Appendix: quick reference

A. Controller controls by mode

ControlPendant modeSetup menuMouse mode
Left stickJog (assigned axes)—Move pointer
Right stickJog, or jog step size—Scroll
TriggersJog safety or speed boost—Left trigger: faster pointer
AAssigned button functionsSwitch the stick speed setLeft click
B, YAssigned button functionsClose the menuB right click, Y Esc
XAssigned button functionsDisplay only (keep the overlay, leave the menu)Enter
D-padStep jog, or assigned functionsUp/down: select a row. Left/right: change its valueArrow keys
LB / RBStep jog, or assigned functionsChange a velocity in big stepsShift+Tab / Tab
Stick clicksAssigned functions, stick speed or stick on/off—Right stick click: Space
StartAssigned function, or Show/Hide PluginSameSame
BackShort: setup menu. Hold: mouse modeShort: back to pendantHold: back to pendant

B. Files and folders

Path (inside the UCCNC folder)Purpose
plugins\XBoxcontrollerPro.dllThe plugin
plugins\XBoxControllerPro\Settings\Settings, one file per UCCNC profile, plus backups and log
plugins\XBoxControllerPro\Settings\Defaults\Saved defaults
plugins\XBoxControllerPro\Manual\This manual (opened by the Help tab)
plugins\xboxcontroller*.xmlSettings from version 3.000 and earlier, read once and never changed

C. What is new in version 3.100

Compared with version 3.000:

The full change history, including earlier versions, is in the README - xbox360 notes.txt file supplied with the plugin.