#!/bin/bash
# get current input device of usb-Sony_Computer_Entertainment_Wireless_Controller-event-joystick
getevent()
{
xboxinput=$(ls -l /dev/input/by-id/usb-Sony_Computer_Entertainment_Wireless_Controller-event-joystick | awk '{print $NF}' FS=/)
}
# intitialize Sony DualShock device
initalize() {
xboxdrv --evdev /dev/input/$xboxinput --evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_Z=lt,ABS_RZ=rt,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y --axismap -Y1=Y1,-Y2=Y2 --evdev-keymap BTN_SOUTH=a,BTN_EAST=b,BTN_WEST=x,BTN_NORTH=y,BTN_TL=lb,BTN_TR=rb,BTN_START=start,BTN_SELECT=back,BTN_THUMBL=tl,BTN_THUMBR=tr --mimic-xpad --silent &
}
# check if udev rule has been executed.
check() {
date > /udev-check.log
}
#main
getevent
initilaize
check