User Tools

Site Tools


games:bsd:flightgear

This is an old revision of the document!


Joystick Research

  • Joysticks need to be at /dev/uhid#
  • uhidd by-default does /dev/uvhid#, that can be symlinked to /dev/uhid# or be done automatically with uhidd -H uhid
  • uhidd has a lot of flags in examples for keyboard/mouse/consumer, but a joystick only needs the virtual generic interface with uhidd -h
  • uhidd has to unbind whatever is on the joystick with uhidd -u
  • :?: Seemingly once uhidd takes control of the original /dev/input/event# device evdev nor joystick modules work and get unloaded according to Xorg.0.log
  • TODO: Put this somewhere outside of FlightGear

devd.conf

su -
pkg install uhidd
ee '/usr/local/etc/devd/sidewinder-joystick-uhidd.conf'
notify 0 {
        match "type" "ATTACH";
        match "ugen" "ugen[0-9]+.[0-9]+";
        match "vendor" "0x045e";
        match "product" "0x0008";
        action "env LD_PRELOAD=/usr/lib/libcuse.so /usr/local/sbin/uhidd -h -H uhid -u /dev/$ugen";
};

Controls

Axis

  • Axis 0: View (horizontal) (stick-face dpad left/right)
  • Axis 1: View (vertical (stick-face dpad up/down) (inverted)
  • Axis 2: Aileron (stick left/right)
  • Axis 3: Elevator (stick up/down) (inverted)
  • Axis 4: Rudder (stick twist left/right)
  • Axis 5: Throttle All Engine (wheel)
  • Axis 6: None (unknown)
  • Axis 7: None (unknown)

Column 1

  • 1: (stick trigger)
  • 2: Flaps Down (stick bottom circle button)
  • 3: (C, top-left button)

Column 2

  • 1: (stick-face large button)
  • 2: (A, bottom-right button)
  • 3: (D, bottom-left button)

Column 3

  • 1: Flaps Up (stick-face top circle button)
  • 2: (B, top-right button)
  • 3: Total Freeze (arrow-up large button below wheel)
/srv/www/wiki/data/attic/games/bsd/flightgear.1725916813.txt.gz · Last modified: (external edit)