RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Guide: Advanced Controller Mappings

    Scheduled Pinned Locked Moved Help and Support
    joystickcontrollermappingxboxdrvscummvm
    626 Posts 35 Posters 462.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      dunnieboy @mediamogul
      last edited by dunnieboy

      @mediamogul thanks ... I am creating two logs to try and nail this down ... one just logs the controller name I am using system wide , the other logs the runcommand $1

      The have the following line in them
      runcommand.log has

      amiga
      

      xboxdrv.log has

      usb-Sony_Interactive_Entertainment_Wireless_Controller-if03-event-joystick
      

      Here is my runcommand-onstart.sh

      #!/bin/sh
      source /opt/retropie/configs/all/get_id.sh
      ## Uncomment one or all of the following if you need to find some information about the emulator or roms
      ## Name of the emulator
      echo $MYCTRL >> /opt/retropie/configs/all/xboxdrv_logs/xboxdrv.log
      echo $1 >> /opt/retropie/configs/all/xboxdrv_logs/runcommand.log
      
      ## Name of the software used for running the emulation
      #echo $2 >> /dev/shm/runcommand.log
      
      ## Name of the rom
      #echo $3 >> /dev/shm/runcommand.log
      
      ##Executed command line
      #echo $4 >> /dev/shm/runcommand.log
      
      
      ### The FUN begins
      #Get ROM name striping full path
      rom="${3##*/}"
      echo $rom >> /opt/retropie/configs/all/xboxdrv_logs/rom.log
      
      ### Set variables for your joypad and emulator
      ### Basic Configuraions - Standard controller mappings 
      basicPS4="/opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
      	--evdev=/dev/input/by-id/$MYCTRL \
      	--silent \
      	--detach-kernel-driver \
      	--force-feedback \
      	--mimic-xpad \
      	--dpad-as-button \
      	--deadzone-trigger 15% \
      	--deadzone 4000 \
      	--trigger-as-button \
      	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2,ABS_RX=lt,ABS_RY=rt,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
      	--evdev-keymap BTN_EAST=a,BTN_C=b,BTN_SOUTH=x,BTN_NORTH=y,BTN_WEST=lb,BTN_Z=rb,BTN_START=tl,BTN_SELECT=tr,BTN_THUMBL=guide,BTN_TL2=back,BTN_TR2=start \
      	--calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767"
      
      amiga="--axismap -Y1=Y1,-Y2=Y2 \
      	--device-name "Amiga Joy" \
      	--ui-axismap x2=REL_X:1,y2=REL_Y:1 \
      	--ui-axismap x1=KEY_LEFT:KEY_RIGHT,y1=KEY_DOWN:KEY_UP \
      	--ui-buttonmap lt=BTN_LEFT,rt=BTN_RIGHT,start=KEY_ESC,back=KEY_LEFTCTRL,y=KEY_SPACE,a=KEY_LEFTCTRL,b=KEY_LEFTALT,x=KEY_LEFTSHIFT \
      
      fourway="--four-way-restrictor"
      invert="--ui-buttonmap du=KEY_DOWN,dd=KEY_UP"
      
      ### Kill Command
      xboxkill="sudo killall >/dev/null xboxdrv"
      
      ### Execute the driver with the configuration you need
      # $1 is the name of the emulation, not the name of the software used
      # it is intellivision not jzintv
      case $1 in
      
      	amiga)
      		$xboxkill
      		joycommand="$basicPS4 $amiga &"
                      echo $joycommand >> /opt/retropie/configs/all/xboxdrv_logs/joycommand.log
      		eval $joycommand
      	;;
      
      esac
      

      I was expecting to see a new controller named 'Amiga Joy" when running the cat command via ssh. But is seems like we are never hitting the amiga) section of the case statement because the joycommand.log file never gets generated. It is running the runcommand-onstart though and its also creating a rom.log from the rom variable. Its just not getting into the amiga subroutine at all.

      mediamogulM 1 Reply Last reply Reply Quote 0
      • mediamogulM
        mediamogul Global Moderator @dunnieboy
        last edited by mediamogul

        @dunnieboy

        Earlier you had poster the error you received from the command itself. When I posted the example command above, I missed the $MYCTRL variable. Try it again with the actual controller ID to see if the basic command works on it's own.

        As far as you runcommand script goes, I believe:

        	--calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767"
        

        Should be:

        	--calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767 \"
        

        RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

        D 1 Reply Last reply Reply Quote 0
        • D
          dunnieboy @mediamogul
          last edited by dunnieboy

          @mediamogul OK ... I am getting much closer .. my problem earlier was because I was concatenating the device_name incorrectly ... I needed to escape the quotes around the name.

          so that line reads like this now

          --device-name \"Amiga Joy\" \
          

          I also added sudo in front of the /

          basicPS4="sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
          

          The output in the shell is :

          Your Xbox/Xbox360 controller should now be available as:
            /dev/input/js1
            /dev/input/event3
          
          Press Ctrl-C to quit
          

          running cat reveals :

          I: Bus=0003 Vendor=045e Product=028e Version=0110
          N: Name="Amiga Joy"
          P: Phys=
          S: Sysfs=/devices/virtual/input/input3
          U: Uniq=
          H: Handlers=kbd mouse1 event3
          B: PROP=0
          B: EV=200007
          B: KEY=70c003c0 30000 0 0 0 0 1680 0 3000400 20000002
          B: REL=3
          B: FF=1 3f870000 0 0
          
          

          the log i wrote looks like this

          usb-Sony_Interactive_Entertainment_Wireless_Controller-if03-event-joystick
          sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv --evdev=/dev/input/by-id/usb-Sony_Interactive_Entertainment_Wireless_Controller-if03-event-joystick --silent --detach-kernel-driver --force-feedback --mimic-xpad --dpad-as-button --deadzone-trigger 15% --deadzone 4000 --trigger-as-button --evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2,ABS_RX=lt,ABS_RY=rt,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y --evdev-keymap BTN_EAST=a,BTN_C=b,BTN_SOUTH=x,BTN_NORTH=y,BTN_WEST=lb,BTN_Z=rb,BTN_START=tl,BTN_SELECT=tr,BTN_THUMBL=guide,BTN_TL2=back,BTN_TR2=start --calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767 --axismap -Y1=Y1,-Y2=Y2 --device-name "Amiga Joy" --ui-axismap x2=REL_X:1,y2=REL_Y:1 --ui-axismap x1=KEY_LEFT:KEY_RIGHT,y1=KEY_DOWN:KEY_UP --ui-buttonmap lt=BTN_LEFT,rt=BTN_RIGHT,start=KEY_ESC,back=KEY_LEFTCTRL,y=KEY_SPACE,a=KEY_LEFTCTRL,b=KEY_LEFTALT,x=KEY_LEFTSHIFT &
          

          I must be doing something wrong though because running this stops the dpad and joystick from working at all in emulations station. Unless I need to configure input again in emulation station.

          mediamogulM 1 Reply Last reply Reply Quote 0
          • mediamogulM
            mediamogul Global Moderator @dunnieboy
            last edited by

            @dunnieboy

            Unless I need to configure input again in emulation station.

            You might have to. I'd definitely try that first.

            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

            1 Reply Last reply Reply Quote 0
            • S
              spud11 @mediamogul
              last edited by spud11

              @mediamogul Hi mediamogul. I never really sorted out the autofire for Defender in the way I hoped (ie I was hoping that it would just autofire constantly without holding down the button), but it is good enough for now. Thanks for your help on this.

              I've now turned to the Amstrad CPC with lr-caprice32. It's working very well with xboxdrv, but I am having one problem. When I bring up the virtual keyboard with F9, it expects me to use a mouse to navigate. My bluetooth keyboard which has a built in touchpad works perfectly.

              I've tried to replicate the mouse/touchpad by using my joystick as a mouse in the virtual keyboard. I've set up the right trigger to act as the modifier. I know the right trigger works because if I am in game and I press the right trigger, the joystick no longer operates; if I press the right trigger again, the joystick works again.

              However, in the virtual keyboard GUI, moving joystick does nothing. Could you please have a look at my code? I was wondering whether the "rt" needed to be mapped to a key (for example). Thanks for any help.

              sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv > /dev/null 2>&1 \
              --silent \
              --detach-kernel-driver \
              --deadzone=4000 \
              --deadzone-trigger 15% \
              --force-feedback \
              --mimic-xpad \
              --trigger-as-button \
              --ui-buttonmap tl=void,tr=void,guide=void \
              --evdev /dev/input/by-path/platform-3f980000.usb-usb-0:1.3.3:1.0-event-joystick \
              --device-name "Player_1" \
              --evdev-absmap ABS_X=y1,ABS_Y=x1 \
              --evdev-keymap BTN_THUMB2=a,BTN_PINKIE=b,BTN_TRIGGER=x,BTN_THUMB=y,BTN_TOP2=lb,BTN_TOP=rb,BTN_BASE3=back,BTN_BASE6=start,BTN_BASE2=lt,BTN_BASE5=rt \
              --buttonmap rt^toggle=rt \
              --ui-axismap rt+x1=REL_X:20,rt+y1=REL_Y:20 \
              --ui-buttonmap a=KEY_X,b=KEY_Y,x=KEY_SPACE,y=KEY_ENTER,lb=KEY_1,rb=KEY_2,back=KEY_3,start=KEY_4,lt=KEY_5 \
              --ui-axismap X1=KEY_LEFT:KEY_RIGHT,Y1=KEY_UP:KEY_DOWN \
              --ui-buttonmap back+start=KEY_SPACE+KEY_ESC \
              --ui-buttonmap start+back=KEY_F9 \
              &
              

              RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

              mediamogulM 1 Reply Last reply Reply Quote 0
              • mediamogulM
                mediamogul Global Moderator @spud11
                last edited by

                @spud11

                Your command appears to be right on the money. Also, from the activity that you've described, it's doing everything as it should. It could be that lr-caprice32 will only make use mouse0. Are any other mice attached while you're attempting all this. If so, try having them disconnected beforehand.

                RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                S 1 Reply Last reply Reply Quote 0
                • S
                  spud11 @mediamogul
                  last edited by

                  @mediamogul That's a good point. There are 2 other mice set up as home made spinners plus a trackball. It would be a bit fiddly to remove them so, unless there's something else I can do, I suppose I'll just have to use my bluetooth keyboard instead for the time being. Thanks for your help.

                  RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                  mediamogulM 1 Reply Last reply Reply Quote 0
                  • mediamogulM
                    mediamogul Global Moderator @spud11
                    last edited by

                    @spud11

                    There are 2 other mice set up as home made spinners plus a trackball.

                    If they're not being used in lr-caprice32, you might be able to temporarily blacklist them from the runcommand-onstart.sh and then re-enable them in the runcommand-onend.sh. Granted, I don't know if this is even possible, but it might be worth exploring.

                    RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                    S 1 Reply Last reply Reply Quote 1
                    • S
                      spud11 @mediamogul
                      last edited by

                      @mediamogul Hi. I'm gradually making my way through most of the emulators without too many problems now. The flexibility of xboxdrv really is amazing. I must confess I now prefer non-libretro/retroarch emulators that have hardcoded keys and then I can just use xboxdrv to convert them to my Dragonrise joystick inputs. It often takes a couple of minutes only.

                      However, I've run into a snag with linapple. I've read through this thread and noted your setup with linapple mimicking the keys and have followed it as per usual, but I'm finding my UP and DOWN aren't working in Championship Loadrunner (my test game). LEFT, RIGHT and the two buttons are okay, and I've made sure Joystick 2 isn't operational.

                      Stepping back one step, when I physically installed Joystick 1, I put it the wrong way round so the x and y axes were mixed up. This means with linapple (and other non-retroarch emulators) the axes are always messed up.

                      With linapple, I first experimented with linapple's internal joystick setup (no xboxdrv) before moving onto xboxdrv and your key method. With linapple's internal joystick setup, I had movement along both x and y axes (albeit in the wrong directions given the physical installation).

                      Now that I'm using xboxdrv though, LEFT and RIGHT are working as they should do, and so are the buttons, but UP and DOWN aren't working at all, and it has me a bit stumped as it should be a simple setup. Could you please have a look at the code and perhaps make any suggestions? Thanks.

                       Player1_appleII="sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv > /dev/null 2>&1 \
                      --silent \
                      --detach-kernel-driver \
                      --deadzone=4000 \
                      --deadzone-trigger 15% \
                      --force-feedback \
                      --mimic-xpad \
                      --trigger-as-button \
                      --ui-buttonmap x=void,y=void,lb=void,rb=void,tl=void,tr=void,guide=void,lt=void,rt=void \
                      --evdev /dev/input/by-path/platform-3f980000.usb-usb-0:1.3.3:1.0-event-joystick \
                      --device-name "Player_1" \
                      --evdev-absmap ABS_X=y1,ABS_Y=x1 \
                      --ui-axismap X1=KEY_KP4:KEY_KP6,Y1=KEY_KP8:KEY_KP2 \
                      --evdev-keymap BTN_THUMB2=a,BTN_PINKIE=b,BTN_BASE3=back,BTN_BASE6=start \
                      --ui-buttonmap a=KEY_KP0,b=KEY_KPDOT \
                      --ui-buttonmap back=KEY_UNKNOWN,start=KEY_UNKNOWN,start+back=KEY_F1,back+start=KEY_F10"
                      
                      case $2 in
                      
                      	linapple)
                      		$xboxkill
                      		joycommand="$Player1_appleII &"
                      		eval $joycommand
                      	;;
                      

                      Relevant parts of linapple.conf are:

                      #######################################################################
                      #
                      #	Joysticks, those sticks of joy! There may be 2 joysticks at the same time
                      # Possible values are:
                      #	0	- joystick disabled
                      #	1	- use PC joystick #1 or #2, for corresponding joystick
                      
                      #	2	- Keyboard standard
                      #	3	- Keyboard centered
                      # When joysticks used as a keyboard, they are stuck to Numpad keys (1-9 - axis movement, 0 - button1, . - button2)
                      #  when centered used, axis of joystick will be centered after releasing any cursor (Numpad 1..9) key.
                      # otherwise it assumed to be pressed always
                      
                      #	4	- Use mouse as a joystick. Rather interesting thing, try it. Useful in Fantavision(tm)by Broderbund Software
                      
                      # Default values are 2 for Joystick 0, and 0 for Joystick 1
                      
                      	Joystick 0	=	3
                      	Joystick 1	=	0
                      
                      # For Joysticks you can define which Joystick index number, axis number, and buttons.
                      # 
                      # Default for Joystick 1 is index 0, axis 0 and 1, buttons 0 and 1.
                      # Default for Joystick 2 is index 1, axis 0 and 1, button 0.
                      
                      
                      	Joy0Index	=	0
                      	Joy1Index	=	1
                      	Joy0Button1	=	0
                      	Joy0Button2	=	1
                      	Joy1Button1	=	0
                      	Joy0Axis0	=	0
                      	Joy0Axis1	=	1
                      	Joy1Axis0	=	0
                      	Joy1Axis1	=	1
                      	
                      # Enable Quitting the program with by pressing two joystick buttons at the same time
                      # Default is enabled, default buttons are 8 and 9. (Xbox 360 back and start)
                      
                      	JoyExitEnable	=	1
                      	JoyExitButton0	=	8
                      	JoyExitButton1	=	9
                      

                      RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                      mediamogulM 1 Reply Last reply Reply Quote 0
                      • mediamogulM
                        mediamogul Global Moderator @spud11
                        last edited by

                        @spud11

                        Could it be related to this:
                        https://retropie.org.uk/forum/topic/5962/dragonrise-usb-driver-issue

                        RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                        S 1 Reply Last reply Reply Quote 1
                        • S
                          spud11 @mediamogul
                          last edited by

                          @mediamogul Thanks. In fact, I wound up having to reinstall linapple because something else was going on, and it appears that it's now working properly with xboxdrv after reinstallation, so all good.

                          RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                          mediamogulM 1 Reply Last reply Reply Quote 1
                          • mediamogulM
                            mediamogul Global Moderator @spud11
                            last edited by

                            @spud11

                            Glad to hear it. It's also good to see that all this mapping nonsense has become second nature. I agree with you about the standalone emulators. The RetroArch ports are very convenient and have their own set of advantages, but they always seem to lack so many features that their standalone counterparts have had for years. That said, it's great to have both options available.

                            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                            S 1 Reply Last reply Reply Quote 0
                            • S
                              spud11 @mediamogul
                              last edited by

                              @mediamogul Hi. I had a look through the thread and tried a search too, but it is now so long I couldn't find what I was looking for.

                              Could you please let me know whether you mapped your F710 directly via Reicast's config program or whether you mapped a keyboard via Reicast's config program and then used xboxdrv to map the keyboard to the F710?

                              I've tried mapping my Dragonrise Arcade joystick via Reicast's config program, and that does work, but that will only allow me to map 1 dpad or the analog controls, not both dpads and the analog controls.

                              So I thought I would use Reicast's config program to map my bluetooth keyboard. That allowed me to map both dpads but not the analog controls. From there, I thought I might be able to use xboxdrv to map things so that I could use a toggle so that I could shift from dpad1 to dpad2 using the same joystick. Although xboxdrv seems to be working in the background, the arcade joystick and buttons aren't doing anything at all. I haven't fully tested it out yet, but it did make me think: does xboxdrv even work with Reicast or is it "a bridge too far"? Any help would be appreciated. Thanks.

                              RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                              mediamogulM 1 Reply Last reply Reply Quote 0
                              • mediamogulM
                                mediamogul Global Moderator @spud11
                                last edited by mediamogul

                                @spud11

                                I haven't used Reicast in a while and I currently have it uninstalled, but I believe I just used the the default method for mapping. If I remember correctly, Reicast needs the joystick to be analog, so a straight key-map wouldn't work. You should be able to create a toggle that switches your joystick between analog and a key-map, but I think you'd still need to configure Reicast to find the analog stick. When you key-mapped before, was it just the joystick not being read, or were the buttons unresponsive as well?

                                RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                S 1 Reply Last reply Reply Quote 1
                                • S
                                  spud11 @mediamogul
                                  last edited by

                                  @mediamogul Thanks very much.

                                  I went back to the default method - scrubbed the keyboard idea, and now I've reconfigured the joystick using the default method. First time I ignored the dpads and only mapped the analog stick. Second time I mapped both dpads and the analog stick to the joystick. (The configuration program allows you to map more than one button or axis to the same thing which is a bit weird).

                                  However, in both examples, the analog stick doesn't seem to work. Some games like Trizeal seem to rely on the analog stick and some like NBA Showdown require dpad1. The latter works, but the former doesn't so it appears the analog controls aren't being mapped properly to the DragonRise joystick, despite registering during the default configuration process. All the fire buttons work in both cases.

                                  It's a bit of a pity. I'd really like to get the exit button/key mapped to select + start using xboxdrv like almost every other emulator I have. On my arcade table, it's really easy to press the exit button accidentally with reicast's default config.

                                  Current mapping with both dpads and analog stick mapped to the joystick:

                                  [emulator]
                                  mapping_name = DragonRise Inc.   Generic   USB  Joystick  
                                  btn_escape = 296
                                  
                                  [dreamcast]
                                  btn_a = 290
                                  btn_b = 293
                                  btn_c = 288
                                  btn_d = 289
                                  btn_x = 292
                                  btn_y = 291
                                  btn_z = 298
                                  btn_start = 299
                                  axis_x = 1
                                  axis_y = 0
                                  
                                  [compat]
                                  axis_dpad1_x = 1
                                  axis_dpad1_x_inverted = no
                                  axis_dpad1_y = 0
                                  axis_dpad1_y_inverted = yes
                                  axis_dpad2_x = 1
                                  axis_dpad2_x_inverted = no
                                  axis_dpad2_y = 0
                                  axis_dpad2_y_inverted = yes
                                  btn_trigger_left = 295
                                  axis_x_inverted = no
                                  axis_y_inverted = yes
                                  

                                  RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                                  mediamogulM 1 Reply Last reply Reply Quote 0
                                  • mediamogulM
                                    mediamogul Global Moderator @spud11
                                    last edited by

                                    @spud11

                                    I've held off on responding, hoping that I'd find some time to do some personal experimenting here, but the hammers just keep falling. One idea that's worth entertaining if you haven't already tried it, is having that particular xboxdrv map activated in Emulation Station and running the joystick configuration. Seeing as how it is now supposed to configure Reicast controls automatically, it might make some small difference that would allow it to work.

                                    RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                    S 1 Reply Last reply Reply Quote 1
                                    • S
                                      spud11 @mediamogul
                                      last edited by

                                      @mediamogul Thanks for that. Unfortunately, I'm actually only using Attract Mode now. I still have Emulation Station installed but haven't used that for quite some time, so I'm unsure what you mean by "xboxdrv map activated in Emulation Station".

                                      RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        spaceman1980
                                        last edited by

                                        how would i go about making my dpad a mouse? I'm using the Loverpi snes controller and zdoom, and i would like to utilize the menus. thanks

                                        mediamogulM 1 Reply Last reply Reply Quote 0
                                        • mediamogulM
                                          mediamogul Global Moderator @spaceman1980
                                          last edited by

                                          @spaceman1980

                                          how would i go about making my dpad a mouse?

                                          So long as your DPad identifies as ABS events and not BTN, you would just use the same set of steps for mapping mouse movement to a joystick.

                                          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                          S 1 Reply Last reply Reply Quote 0
                                          • S
                                            spud11 @mediamogul
                                            last edited by

                                            @mediamogul Hi. I'm currently using xboxdrv and moonlight together and trying both to quit a game and terminate the stream with the one key press.

                                            Occasionally, I'm finding that if I quit a game, the stream continues. Built into Moonlight, you can quit a game with the ESC key and also quit the stream by holding down Shift-Control-Alt+Q.

                                            By pressing the back + right trigger keys, I'm trying to get xboxdrv, first, to send the ESC key and, second, to send Shift-Control-Alt+Q, but cannot get it to work.

                                            I've tried setting up a macro but the macro seems only to allow one key press at a time (eg press ESC, then press Shift etc) eg the following won't work:

                                            send KEY_ESC 1
                                            wait 100
                                            send KEY_LEFTCTRL+KEY_LEFTSHIFT+KEY_LEFTALT+KEY_Q 1
                                            

                                            I've also tried --ui-buttonmap back+rt=KEY_ESC+KEY_LEFTCTRL+KEY_LEFTSHIFT+KEY_LEFTALT+KEY_Q \, but that doesn't work.

                                            I've tried having both --ui-buttonmap back+rt=KEY_ESC \ and --ui-buttonmap back+rt=KEY_LEFTCTRL+KEY_LEFTSHIFT+KEY_LEFTALT+KEY_Q \ in the one script. That doesn't work.

                                            I see that you've previously set up key-cycles via xboxdrv and xboxdrv seems to allow key-sequences, but not sure how that works.

                                            So at the moment I've got back+rt sending the Escape key and rt+back sending the Shift-Control-Alt+Q and I quickly press one after the other which works. It would just be nice to have back+rt do both with the one key press.

                                            Would you have any insight please?

                                            RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                                            mediamogulM 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.