Skip to main content

Linux Setup

Guide for connecting the PinOne Config Tool on Linux. Tested on Ubuntu 24.04 XFCE, VPX 10.8.1 BGFX, and PinOne Config Tool 2.2.1.

Background​

On Linux, the PinOne board is detected correctly and works fine in VPX, but the Config Tool may fail to connect: Auto Connect fails, and manually selecting the correct serial port causes the app to hang indefinitely. This is caused by a HID interface being claimed by the Linux hid-generic driver. The fix below unbinds that interface just long enough to connect.

Prerequisites​

Confirm the board is detected:

lsusb

Look for a device with Vendor ID 0e8f and Product ID 9207.

Confirm your user is in the dialout group (required for serial port access):

groups

Step 1 - Identify the correct serial port​

Don't assume the PinOne is ttyACM0 — check each ACM device until you find one reporting idVendor==0e8f and idProduct==9207:

udevadm info -a -n /dev/ttyACM0 | grep -E "idVendor|idProduct|KERNELS" | head -20
udevadm info -a -n /dev/ttyACM1 | grep -E "idVendor|idProduct|KERNELS" | head -20

Step 2 - Launch the Config Tool​

cd ~/Downloads
chmod +x pinone-config-tool-2.2.1.AppImage
./pinone-config-tool-2.2.1.AppImage --no-sandbox

Select the port identified in Step 1 (auto connect does not work) and click Connect. Without the fix in Step 3, this will hang.

Step 3 - Apply the HID fix​

Close the Config Tool completely, then unbind interface .0003:

echo "0003:0E8F:9207.0003" | sudo tee /sys/bus/hid/drivers/hid-generic/unbind

Verify it's no longer attached — you should only see .0002 and .0004 remaining:

ls /sys/bus/hid/drivers/hid-generic/ | grep 0E8F

Step 4 - Connect​

cd ~/Downloads
./pinone-config-tool-2.2.1.AppImage --no-sandbox

Select the PinOne's ACM port and click Connect. A successful connection shows:

  • Connect changes to Disconnect
  • Inputs, Outputs, Plunger, and Accelerometer pages load
  • Settings and Controller pages are available

Step 5 - Restore normal operation​

Once you're done configuring, rebind the interface:

echo "0003:0E8F:9207.0003" | sudo tee /sys/bus/hid/drivers/hid-generic/bind

Verify all three interfaces (.0002, .0003, .0004) are present again.

Optional - One-click launcher script​

Create ~/bin/pinone-config.sh:

#!/bin/bash
echo "0003:0E8F:9207.0003" | sudo tee /sys/bus/hid/drivers/hid-generic/unbind
APP="$HOME/Downloads/pinone-config-tool-2.2.1.AppImage"
"$APP" --no-sandbox
echo "0003:0E8F:9207.0003" | sudo tee /sys/bus/hid/drivers/hid-generic/bind

Make it executable and run it:

chmod +x ~/bin/pinone-config.sh
~/bin/pinone-config.sh

This unbinds the interface, launches the tool, and rebinds the interface automatically when the tool closes.

Optional - Remote administration with Remmina​

The Config Tool can be launched remotely after interface .0003 is unbound, but input indicators may not update properly over RDP. For input testing, use the tool locally at the cabinet.