# Pendant Support

The Community Controller supports the [WiXHC HB](https://www.wixhc.cn/product/4-axis-usb-cnc-controller-whb04b-4) family of pendants to control the machine. They can be purchased from [AliExpress](https://www.aliexpress.com/item/1005006270475983.html) or from other online retailers. There are a number of variations within this family of devices, including 4/6 axis models (WHB04/WHB06), and wired/wireless (LHB04/LHB06). All them are expected to work with the Community Controller.&#x20;

{% hint style="warning" %}
This functionality is supported on Windows, MacOS and Linux. It is not available for iOS or Android.
{% endhint %}

<figure><img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-71cccfc404d8f2c01553c3703c0b131905b63780%2FPXL_20250728_083517873.MP.jpg?alt=media" alt="" width="375"><figcaption><p>Pictured is a 4 axis, wireless WBH04</p></figcaption></figure>

## Configuration

### Possible Configuration Options

The following is a screenshot of the Pendant configuration screen, showing all the possible options:

<figure><img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-b3af7320d26219ab826e678ba856635362ffaf55%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

### Enable Integration

To enable the WBH04 pendant support in the Controller:

1. Plug the Pendant receiver (if wireless) or Pendant USB cable into the computer that will run the Controller software. No drivers are required.
2. Open the Controller and browse to the Settings screen.&#x20;
3. In the Pendant section of Settings select the "Use Hardware Pendant" dropdown, and choose the WHB04 option. This option will only be present if a WHB04 type device is connected to the computer.
4. Apply the Setting. The pendant can now be used.&#x20;

### Setting a Primary Action on the Pendant

The WBH04 pendant devices have action buttons which can also be set to run Macros. In the Pendant configuration screen is the setting ***`Primary button action is`*** which defines what happens when the button is pressed. This can be ***Key-specific Action*** or ***Macro***. The opposite of this setting is what will occur when the button is pressed at the same time as the ***FN*** key.

For example if the ***`Primary button action is` setting is set to Key-specific Action***, pressing the key<img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-9f8a6c94898e9760356a3dc9ef23e8c4c59fd070%2Fimage.png?alt=media" alt="" data-size="line">will increase the Feed override by 10%. Pushing the <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-59ba319959be54b3b40d312991d7496f51744b7b%2Fimage.png?alt=media" alt="" data-size="line">+<img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-9f8a6c94898e9760356a3dc9ef23e8c4c59fd070%2Fimage.png?alt=media" alt="" data-size="line"> will run Macro #1.

For example if the ***`Primary button action is` setting is set to Macro***, pressing the key<img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-9f8a6c94898e9760356a3dc9ef23e8c4c59fd070%2Fimage.png?alt=media" alt="" data-size="line">will run Macro #1. Pushing the <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-59ba319959be54b3b40d312991d7496f51744b7b%2Fimage.png?alt=media" alt="" data-size="line">+<img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-9f8a6c94898e9760356a3dc9ef23e8c4c59fd070%2Fimage.png?alt=media" alt="" data-size="line"> will run increase the Feed override by 10%

### Setting Macros

The pendant supports configuration of up to 10 macros. These macros are short snippets of gcode which will be executed when the corresponding Macro buttons are pressed.

These can be configured in the Settings->Pendant screen by clicking the <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-37deadc9e1b99f6e1b01ed23d4f5bb72bf342f0a%2Fimage.png?alt=media" alt="Open editor..." data-size="line">UI button corresponding to the Macro number.

This will bring up the Macro edit screen:

<figure><img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-94d00b32f50aca4fe544adc04593d7c6d19558db%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

### Step/Continuous Buttons

As of machine firmware version 2.0.0[ continuous jogging mode](https://carvera-community.gitbook.io/docs/firmware/features/jog-modes) is supported. Pressing the Continuous <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-82a22e958a655b95cf1c1981f2dd0713b3fb4648%2Fimage.png?alt=media" alt="" data-size="line"> or Step <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-84d13c97ff3df3210abcce676f20e949167120e3%2Fimage.png?alt=media" alt="" data-size="line"> buttons switches the jogging mode. The current mode is shown on the pendant LCD as STP or CON, and is also reflected in the Controller UI.

If the speed/step dial is set to Lead <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-538e9027a64e56a38b01d0aee1520a4c65f82fc6%2FPXL_20251020_023753175.MP.jpg?alt=media" alt="" data-size="line">and Continuous mode is selected the movement speed will be variable based on the speed of jogging wheel and the selected Jog Speed in the [Jogging Controls](https://carvera-community.gitbook.io/docs/controller/features/jogging-controls).

## Usage

To jog with the pendant you must have the Pendant Jogging toggle <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-f971f528aaa7ea908b95ead8492e98e427e81b94%2Fimage.png?alt=media" alt="" data-size="line"> enabled on the main control screen. The button is blue when pendant based jogging is enabled. The action/macro buttons will work irrespective if <img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-f971f528aaa7ea908b95ead8492e98e427e81b94%2Fimage.png?alt=media" alt="" data-size="line"> is enabled or not.

<figure><img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-949654423288c17ebd076cae0108a76c25cd999d%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

## Linux&#x20;

To use the pendant in Linux your system needs the `libhidapi-hidraw0` package.

#### Linux device permissions

To use the pendant in Linux, you need to grant your user access to the USB device. Most Linux distributions (Ubuntu/Debian/Fedora) automatically add users to the `plugdev` group, so the easiest and most secure approach is to create a udev rule that grants this group access to the device.

Run this command to create the udev rule:

```
sudo sh -c 'echo "SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"10ce\", ATTRS{idProduct}==\"eb93\", GROUP=\"plugdev\", MODE=\"0660\"" > /etc/udev/rules.d/90-xhc.rules'
```

After creating the rule, you may need to reload the udev rules:

```
sudo udevadm control --reload-rules
sudo udevadm trigger
```

## Known Limitations

There are a number of known limitations to the WBH04 pendant/integration.

### Movement step is shown as % on LCD

<figure><img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-46a1b67b8b8e76300075ae7219ba89aa85563a71%2Fimage.png?alt=media" alt="" width="188"><figcaption></figcaption></figure>

The pendant LCD screen always shows the movement step (STP) as a %, however the actual movement size per rotary dial "click" is defined by the white text in mm:

<figure><img src="https://796221717-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhIcl2yLv4r2ehdkJpmlK%2Fuploads%2Fgit-blob-48a85b6473ecead013412a68eeb4e61c411cd73f%2Fimage.png?alt=media" alt="" width="188"><figcaption></figcaption></figure>

### Invalid Axis Values

When the Axis selector is set to Off or the Controller has not yet connected to the machine, the axis position values on the Pendant screen can display incorrect values.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://carvera-community.gitbook.io/docs/controller/features/pendant-support.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
