copyright
handbook

GIMX stands for Game Input MultipleXer or Game Input MatriX. The purpose of this free software is to control a video game console with a computer (e.g. a PC or a Raspberry Pi). It works with the PS3, the Xbox 360, the PS4 and the Xbox One.
It operates:
¤ over bluetooth: works with GNU/Linux (PS3, PS4) only. A compatible bluetooth dongle is required.
¤ over usb: works with GNU/Linux and Windows (PS3, PS4, 360, XOne). A USB adapter is required.
The application gets data from the peripherals (mice, keyboards and joysticks) and sends controls to the game console over bluetooth or usb. Other controls such as gesture or voice are possible through the use of external software that emulate peripherals.

GIMX donation campaign.

advertise
Posted on by Matlo | Leave a comment
research

GIMX 5.8

This release fixes a few bugs and adds GT Force, Driving Force and Driving Force Pro emulations, for PS2. Thanks to Pawel for submitting source code for these new wheel emulations!

More info on the forum: link.

jobs
Posted in Package release | Tagged | Leave a comment
partner

GIMX 5.7

This release fixes two bugs: Dualshock 4 inputs not working when using the bluetooth connection method (#369), and Xbox 360 controller not working on Windows 10 (#368).

More info on the forum: link.

address
Posted in Package release | Tagged | 2 Comments
notice

dummy_hcd

To speed up my development, I’ll try using the dummy_hcd kernel module, which allows to emulate an OTG port connected to the computer.

dummy_hcd is missing on my GNU/Linux distribution (Linux Mint 17.3), so I had to build it myself:

apt-get source linux-image-`uname -r`
cd linux-lts-vivid-3.19.0
cp /boot/config-`uname -r` .config
cp /usr/src/linux-headers-`uname -r`/Module.symvers .
make menuconfig
# select → Device Drivers → USB support → USB Gadget Support → USB Peripheral Controller → Dummy HCD
make prepare
make scripts
make -j 4 M=drivers/usb/gadget
sudo cp drivers/usb/gadget/udc/dummy_hcd.ko /lib/modules/`uname -r`/kernel/drivers/usb/gadget/udc/
sudo depmod -a

Adding the following line to /etc/fstab makes it easier to mount the gadget file system:
gadget /dev/gadget gadgetfs noauto,user,group 0 0

Creating a udev rule in /etc/udev/rules.d/99-gadgetfs.rules allows to automatically mount the gadget filesystem when dummy_hcd is loaded:
ACTION=="add", DEVPATH=="/module/dummy_hcd" SUBSYSTEM=="module" RUN+="/bin/mkdir /dev/gadget" RUN+="/bin/mount /dev/gadget"
ACTION=="remove", DEVPATH=="/module/dummy_hcd" SUBSYSTEM=="module" RUN+="/bin/umount /dev/gadget" RUN+="/bin/rmdir /dev/gadget"

To apply this rule without rebooting:
sudo udevadm control --reload-rules

dummy_hcd can be loaded using modprobe:
sudo modprobe dummy_hcd

or automatically loaded at boot time adding this line to /etc/module:
dummy_hcd

The gadget can finally be controlled using the /dev/gadget/dummy_udc file.

Posted in gadgetfs | Tagged | 1 Comment
careers

C.H.I.P.

I received my C.H.I.P.s!

The C.H.I.P. project was launched on Kickstarter in May 2015.
This tiny Linux board has two interesting features:

  • it is very cheap ($9 + shipping)
  • it has a USB HOST port and a USB OTG port

The USB OTG port can be programmed to behave as a USB device, which means it can replace the DIY USB adapter!

My first experiments will focus on making serialusb able to use the OTG port using gadgetfs.

report
Posted in CHIP, gadgetfs | Tagged feedback | 7 Comments

GIMX 5.6

This release fixes a bug in the mouse calibration tool (#363).

More info on the forum: link.

e-mail
Posted in Package release | Tagged | 2 Comments
help

serialusb – a cheap USB proxy for input devices

In recent weeks, I have been working on serialusb, a cheap USB proxy for input devices.
This tool can act as a USB proxy using the well-known DIY USB adapter.
Combined with usbmon and wireshark, it allows to generate and inspect USB captures.
Read the github project page to learn about the capabilities, the limitations, and the usage instructions of serialusb.

I’ve tested it successfully with the following hosts and devices:

  • PC + Logitech G502 gaming mouse
  • PC + Dell USB keyboard
  • PC + Logitech Driving Force GT
  • PC + Logitech RumblePad 2
  • PS3 + Logitech Driving Force GT
  • PC or PS3 + Dualshock 3
  • PC or PS4 + Hori Pad Fps plus
  • PC or Xbox 360 + Xbox 360 controller
  • PC or Xbox One + Xbox One controller

If you have a DIY USB adapter and any of the following host + device combination, please consider making a USB capture and send it to me:

  • Xbox One + Logitech G920
  • Xbox One + Xbox One controller with 3.5mm stereo headset jack (USB PID = 0x02dd)
Posted in usb sniffer | Tagged | Leave a comment

GIMX 5.5

This release fixes axis intensity control which was broken since GIMX 4.0 (#362).

More info on the forum: link.

Posted in Package release | Tagged | 2 Comments
copyright

GIMX 5.4

This release adds force feedback support for the G27 wheel emulation (#307), fixes pedal issues when using the i386 version (#358), and fixes mouse to axis translation defects when using a GPP/Cronus/Titan device (#360).

More info on the forum: link.

handbook
Posted in Gaming wheel, PS3, PS4 | Tagged advertise | 3 Comments
research

GIMX 5.3

This release improves force feedback management in case of transmission errors (#357). It includes USBDK 1.0.7 which fixes issues with some USB host controllers (#345) and makes GIMX i386 able to run on 64bit Windows (#343).

More info on the forum: link.

jobs
Posted in Gaming wheel, PS4 | Tagged | Leave a comment
partner

GIMX 5.2

More info on the forum: link.

address
Posted in Gaming wheel, PS4 | Tagged | Leave a comment
notice