# Show or describe your HID configuration: Peripheral hardware



## sidetone (Jun 12, 2022)

HID devices include keyboards, gamepads/joysticks, penpads/touchpads, mice... This can be for any type of HID device, from the old architecture, from x86-input, from the newer driver architecture, from Antimicro or Bluetooth. Any HID that runs on FreeBSD.

Even plans on what to do with it. Or steps for attempting to set up HID devices that aren't fully completed or solved yet. Examples and images are good too. If you have configuration files, show them.

Antimicro's (.amgp) configuration files are in XML. It may be too long to show, but if you want to show that, you can. Use a spoiler tag to contain such large amounts of text. For Antimicro, descriptions of how you use controls, or a picture of the map may do.

This may help others find new ways of configuring devices, set up common devices in better ways, set up newer hardware, or set up exotic hardware. If it can be used for a penpad/touchpad, or another way to use a gamepad/joystick.

*Instructional*
For setting up devices that use usbhid: Thread howto-enabling-multimedia-keys-gamepads-joysticks-for-desktop-usbhid.84464.

For partially complete instructions for Bluetooth: Thread bluetooth-investigating-dongle-use-for-hid-hardware-freebsd-13.85431. This gets results for events from my gamepad, on an officially unsupported Bluetooth version of dongle, though this is as far as it goes. The hardware of the same type are supported for the previous Bluetooth dongle version. It requires enough support that the driver will load for it, and do something for it. Perhaps `bluetooth-config scan` doesn't work on mine, but perhaps, it works on fully supported Bluetooth dongles and HID devices connected to it.

Thread logitech-k810-bluetooth-keyboard-updated-5-11-2014.39679 is older, but it seems to have what else is needed to complete the steps for further progress on setting up Bluetooth. Thread bluetooth-bcm20702a0.39425 adds an important piece to the previous thread. There's the Bluetooth section from the FreeBSD Handbook: https://docs.freebsd.org/en/books/handbook/advanced-networking/#network-bluetooth. Need to see what's up to date and still relevant to this.

Ways on other HID architectures are welcome: iichid, x86-input, libusb, uhid, Bluetooth...

*HID setup plans*
I'll show configuration files or descriptions and elaborate on them one step at a time, later. For Antimicro, I'll describe how the gamepad is mapped to keys and mouse controls, because the configuration is done through an interface. If I show the XML file, which is long, it will be used with a spoiler tag. I'll investigate into mapping HID_descriptors or evdev to xorg.conf.d files, based off of the settings on Antimicro. I'll also look at the claim that Antimicro mappings can be exported to other programs or games.

I also plan to use the HID descriptor from `bthidcontrol -a gamepad Query` to get the hid_descriptor for Bluetooth mode of my gamepad. Maybe that information or evdev can be plugged into x11-drivers/x86-input-joystick using output from emulators/joytran. First, I may try this by getting the hid_descriptor from my basic non-Bluetooth connection of the same physical gamepad to joytran or x11/xev to to x86-input-joystick configuration.


----------

