It’s been a long time in the making, and looked like it wouldn’t happen for a long time (due to the tricky new bluetooth stack), but I’m happy to say that Marshmallow support is just around the corner for Sixaxis Controller.

There is still extensive testing to be done as well as some other minor bug fixes, but all things going well, you can expect Marshmallow support later this week!

Thank you all for your patience – I know there has been an excesively long delay since Marshmallow was released. It means a lot to have such supportive fans and users.

Update 1:
Quite a few additional bugs have come out during testing, and as a result, the release has been dalayed until early next week.

Update 2:
The release is out on Google Play now!

120 comments on “Marshmallow”

  1. Sillik

    Oh wow good news!
    Just in time as well, I was about to order another gamepad, but kinda didn’t want to… :-)

    Thanks for the hard work!

  2. MezaCorleehone

    Thank you.
    I can finally move from Android 5.1.1 to 6.0.1

    It is what I was waiting for months.

  3. DutchKevv

    Would you mind sharing a technical detail.. ? :)

    I wonder if you injected & used the Bluez stack or only the new Bluedroid, as I’m diving into C/Java on Marshmallow to get some other controllers working.. But it’s a true pain in the ass

    Thanks! Love your app

    • Dancing Pixel Studios

      I found it would be too difficult to use a separate Bluetooth stack such as bluez, because there are too many vendor specific commands and patch files, and countless different Bluetooth chips out there. It would just be impractical to configure and support all these chips myself.

      Also, it would have been much easier if the PlayStation controllers supported the l2cap protocol correctly, but they don’t, and as a result, I have had to implement the drivers using the HCI protocol directly.

      As a result there are a lot of low level hooks that need to be installed after bringing up the stack to intercept the HCI messages before they get passed up to higher layers.

      This is all done by dynamically loading the Bluetooth libraries, then calling and hooking various functions in the library.

  4. Andrew

    Amazing news. Thanks for keeping up support for newer devices and OSes. I’ve been using this app for years now and recommend it to all my friends. Can’t wait for MM support.

    Do you have a beta program?

    • Haid

      ” you can expect Marshmallow support later this week! ” – read the post.

      Good job ! I hope soon to enjoy sixaxis controller !

      • Sillik

        His question was not about the official release of the app, but about a beta program, which is entirely different.
        Read the post too! :-)

  5. Will Castro

    Hey, it probably doesn’t matter in the long run, but would it be possible to update the compatibility checker before the main app, so people could report if things work sooner?

    • Dancing Pixel Studios

      I prefer not to release the compatibility checker first, because then people will buy the main app when it is on an older version that still doesn’t work.

      Often I will post test versions of the checker app, usually over at, but that won’t happen until I finish fixing all the bugs I know about.

    • Dancing Pixel Studios

      It will hopefully support all versions of Marshmallow – I’m testing it with 6.0.1. Usually support varies more with phone models rather than OS minor versions though, so it’s impossible to make statements like “all versions up to 6.x.x are supported”.

      Also, based on the most recently published Android source code from Android N, not much has changed in the Bluetooth stack, so it may support N out of the box. That could change before the release though.

      • Harsh

        awesome !! only reason i am still stuck on 5.1.1 on my oneplus one is because of sixaxis.. hurry up and release the update already XOXOXO

      • meldroc

        Cool, that was my next question: Now that it’s working on M, I was wondering about N. Looks like it’s not going to be especially difficult to get working!

  6. hard2earn

    How much of a work around is this? Can i expect similar performance like when i plug my wired 360 gamepad to my phone? Will i be able to tell android that there’s an 360 pad connected? Last time I tried real racing 3 with sixaxis i could not get analog steering to work. I bought the app but haven’t even used it since. But like most of you i figured it does not work on 6.0.1 so haven’t tried anything since. Good news you are still working on it tho. Running omnirom 6.0.1 on my oneplus one.

    • Dancing Pixel Studios

      If it works on a device, it should run faster than it could if connected via the standard bluetooth stack. This is because it bypasses a lot of higher level layers (such as the whole Java VM).

      Currently the controller is registered as a PS3 gamepad (once you enable the native gamepad setting). All the button mappings can be changed though, so this should work with most games that support a native gamepad. Otherwise you will need to set up a touch profile for your game.

  7. jose

    hi all, if you want not wait to take out the new version of sixaxis controller, you have the sixaxis enabler app, works perfectly with android 6.0.1 it is necessary calbe OTG.

    a greeting and make haste to update

    • Dancing Pixel Studios

      I’m still not convinced the Sixaxis Enabler app actually does anything… OTG has always worked for me without that app…

  8. Kallamamran

    Oh my oh my… I guess the comments here is explanation why I have spent 2 days on trying to get this to work on my S6 with 6.0.1 *Aaaaaaaargh*
    Glad to learn it might be working soon though. Really hope so. No use for my GearVR without a controller 😉

    Keep up the good work Harsh! You rock :)

    • kailil kendrick

      I have the S6 (marshmallow 6.0.1) as well running sixaxis 8.3
      Im getting the error: only position independen executables (pie) are supported.

      • kailil kendrick

        Yaaaaaayyyyy! Issue was resolved! I repurchased the app on this user and it works flawlessly!

  9. Ben

    Do you have a beta program?

    I have 3 devices I would be willing to test on for you.

    Republic Wireless MOTO X 1st Gen
    Asus tf700 with KatKiss 6.0.1 MM
    Nexus 6p with Android N Beta (preview 3)

  10. Erik Hughes

    Will it still support the Playstation 3 controllers? Cant wait to try it out with my VR “headset” ^^


    you already have forecast that day will come out the update. . . and the bike g 3 xt 1544 will work, already have root on the device, Android 6.0 (which even gave a super job more finally got) I’m the checker and the main app ready just waiting for the update. Thank you and congratulations for the good work hope news

  12. ZuliuZ

    You are doing gods work, also interested in beta helping.

  13. S.Slave

    Thank you so much. cant wait to see it on this train(Marshmallow)

  14. Harsh

    I am literally refreshing this site every hour .. I need sixaxis in my life

  15. Kallamamran

    Harsh: Same here… F5, F5, F5, F5……. 😛

  16. Sean

    I understand there was a delay, but do we have a new eta of when there will be a release? The top of this stated “early next week”, which has come and gone. Not at all being inpatient, just looking for status update. Thanks for all your hard work.

    P.S. – Trying to get this to get going with the gear vr. No point ordering a controller if this will be out soon. Thanks again!!!!!!!!!!

    • Dancing Pixel Studios

      I need to learn to stop posting ETA’s! It’s taken the whole week to iron out all the bugs on all my test devices, and I’ve been trying to future proof it for Android N too (which I’ve noticed has made some minor changes to the stack).

      That said, unless something major comes up, the release will still be this week!

  17. Erik Hughes

    Thank you for the update! Pitty I don’t have my controller with me at work xD

  18. N1nj4R4bb1D

    Just tested it on my Nexus 7 2013 LTE… Android 6.0.1… when Sixaxis Controller is running my wireless is not working!

    • Dancing Pixel Studios

      Often this can be resolved by changing the channel your wireless router is broadcasting on (you will need admin access to your router).

  19. Stranno

    Working properly on Nvidia Tablet K1 and Dual Shock 3.


  20. Cesionaut

    Works on my Z2, with (near) stock marshmallow! They actually had native support for the controller, but removed it, so Marshmallow was a double kick in the pants in that regard.


    congratulations for the work, the app get very good and worked perfectly …

  22. Queen Fiona

    I’ve been looking forward to this for a while! I’ve been saving a DS3 phone clip for just this release, and as far as I can tell it works flawlessly. I bought an Ipega in the meantime, and it has a nice feel in a Game Boy-ish sort of way, but a real controller like this is much better in a lot of situations…unless I don’t have room in my purse.

    One thing I should note is, the mapping for the native gamepad support doesn’t match up properly – some of the buttons are shifted around compared to the Xbox 360 button layout stock Android drivers seem to assume. This made using RetroArch, the main reason I bought this app and waited so long to get it working, a real hassle. It’s also interacting weirdly with the autodetect on that app, if you end up wanting to squash more bugs in the release.

    If it matters, my device is an HTC One M8. Thank you so much for your hard work and dedication!

    • Dancing Pixel Studios

      The controller registers itself as a PS3 controller, so there will be some differences, however you can change the button mappings under ‘Gamepad Settings->Edit Mappings”.

  23. Alastair Parker

    Unfortunately it isn’t working with the Oneplus 2.

    • Dancing Pixel Studios

      Can you send me a logcat and screenshot via email?

    • Alastair Parker

      Forget my previous comment. After re-pairing a couple of time it works flawlessly. Thanks for the update!

  24. Tomasz

    Works fine on Mate 8 accept disconection, it stops on “trying to close server” nothing happens, controller is switched off, BT stays off.
    Any idea?

    • Dancing Pixel Studios

      Do you get an error message in the output of the app when you press start?

    • Dancing Pixel Studios

      Well I have some bad news and some good news… Bad news is some lovely person at Google finally added -fvisibility=hidden to the bluetooth build scripts used in Android N, which means all access to the HCI layer is gone (thanks Ian, you really made my day!).

      The good news is that I’ve been digging around, and I think I can bypass the stack altogether and talk directly to the bluetooth vendor library, but it’s going to be a lot more tricky to implement, so it will be a while before I even know if it will be viable, let alone have a working implementation. Previously I did not pursue this avenue, because I thought there would be too much vendor specific code compiled in to the HCI layer, but I don’t think it’s as bad as I first thought.

  25. Александр

    Hello, Dualshock 4 connects and then disconnects. After four attempts in a row, the app says that the maximum number of connected controllers.
    P. S. Sorry for my English, I from Russia.

    • Dancing Pixel Studios

      Has the controller been charged for at least several minutes?

      • RibShark

        I have the same bug. The lightbar on the DS4 flashes for a few seconds before stopping, and after 4 attempts the app says that the maximum number of controllers were connected. This bug was also occurring before the update. I am using a Marshmallow Cyanogenmod-based ROM on the HTC One M7 (which according to your FAQ, is compatible if not using the stock ROM). I haven’t tested on my Nexus 10 after the update, but this was also happening on that before it.

        • RibShark

          Confirming that resetting the controller via the hole at the back, then pairing with SixaxisPairTool fixed the problem.

      • Александр

        Yes, it is charged at least half. I have a Samsung Galaxy S3 on CyanogenMod 13 (Marshmallow)

        • Dancing Pixel Studios

          That’s strange – the Galaxy S3 on CM13 is one of my test devices, and I did not experience this issue in testing.

          Does the controller disconnect immediately, or does it work for a while first?

          Also, is the controller genuine? (Fake PS3 controllers can cause all kinds of trouble, but I’m not sure about DS4, or even whether there are fakes yet!)

          • Александр

            It’s weird, but I hope you will correct this? I have all the controllers only the original DS3 and DS4. I do not buy fakes in principle, only Sony))

          • Александр

            Yes and DS4 turned off at the same moment, as if not connected at all =(

          • Александр

            I’m sorry!)) it worked! I threw all the settings in the app and reset it in the DS4 via the small button behind the controller, then using Sixaxis Pair Tool 0.3.0 again wrote the mac address of the smartphone and all)) thanks a lot for your program! Use for several years, all happy!))

  26. Miguel

    Thank you for the update! But I can’t make it work on my Oneplus One. It tries to make a connection several times (type 1, 2, 3 and 4, but it says “could not load bluetooth library”, “error: failed to configure bluetooth”, “could not load HCI library”, ” can’t connect to pipe for device”.
    And during the synchronisation I get a prompt to type the code to pair the controller. It does not work with either 0000 or 1234 and/or giving access. Please help!

    • Dancing Pixel Studios

      Can you let me know if /system/lib/hw/ exists?

    • Dancing Pixel Studios

      Can you email me a screenshot of the error, please?

  27. Miguel

    Thank you for the quick answer.
    Yes, I have the system/lib/hw/ archive.

  28. Sillik

    Works great on Note 4 with Marshmallow, thanks!
    I just have a strange behaviour in one game: Evoland. The left stick seems to be off 45 degrees clockwise or something, which makes it completely unplayable.
    It was already the case with Lolipop though so it is not related to the new update.
    Any idea why and how to solve?

    • Dancing Pixel Studios

      You mean 90 degrees? Can you try changing the ‘Touch Emulation->Orientation Offset’ setting, then trying the game again.

    • Dancing Pixel Studios

      Actually, if it’s just that one game, you could try swapping the axes under the button properties. Some games don’t report the correct orientation,which is often why this occurs.

      The orientation offset setting is a global setting, so it might break other game profiles.

      • Sillik

        It is not using the touch emulation, so that’s what makes it strange. It is with gamepad enabled. And I looked it up, nobody seems to complain about it with other gamepads.
        I will try touch emulation though, maybe that will work.

        • Dancing Pixel Studios

          Check under ‘Gamepad Settings->Input Mappings’. Maybe the axes have been changed?

          • Sillik


            I checked and tested and here are my findings.
            The input mapping was correct.
            All axes are actually OK, except “up”. When going up, it goes also right at the same time, so diagonally right.
            I tried changing things in the input mapping but never managed to get a correct behaviour. I also tried using the right stick instead of the left one but it doesn’t work either.
            Using touch emulation actually works correctly.

            So I don’t know if the game is reading the “right” input from an incorrect place or something, but this is really weird. But as I said it is only in that one game, which I can play with touch emulation so I guess it is not a big issue.

            Thanks anyway!

  29. Long

    Thank you for Marshmallow updating. but it is not works on my Nvidia Shield TV. I can start the server and update the MAC address successful for my PS4 controllers, then I try to pair PS4 controller to the server. Nothing is showing up and it is still listening for controller. No errors message.

    Can you look at it ,please ?


    • Long

      Nevermind, it is working now. Awesome app. By the way, can you make this app compatible with Android TV, please ?

      • Dancing Pixel Studios

        Yes, I’ll look at official Android TV support soon.

        • Long

          Another bug I found in this version for Marshmallow is whenever you disconnect the controllers by manually or timeout, you can’t reconnect controllers back. I have to stop and restart the server to make it work. This is so annoying bug. Can you look at it, please ?

      • Anon

        How did you get it to work? I’m thinking about picking this up for my shield tv. I read that root is required.


        • Long

          You have to root your device first before using this app. The first time I cannot make it work , the bluetooth on my Shield TV is somehow broken. Then I have to reset my device to factory setting. And root again, this time it is working.

  30. meldroc

    Got it working on my Nexus 7 (2013) for the first time since I put Marshmallow on it. Thanks for all the hard work!

  31. Ruud

    Super!! Going to test the app soon!! Thank you so much for all your work!

  32. J

    My ps3 controller works when “Enable Gamepad” is checked in the Gamepad Settings but the moment I try to uncheck it I can longer press any buttons. I usually uncheck that to check the “Bypass IME” box in the Keyboard Emulation settings. That setting is the only thing I’ve found that allows me to map multiple ps3 controllers on Mame4Droid by assigning actual keyboard keys to each buttons instead of the stock general android gamepad buttons. Maybe this is another bug that needs to be ironed out or maybe I need to do something new to get things up and running properly. Also I’m using this app on my Nvidia Shield Tablet original but want to get this for my Shield TV, I see a poster up above seems to have it for the TV. It’s not available to dl in the play store even though I purchased it on the tablet, do I have to sideload it for the Shield TV and if so how?

  33. m

    I already updated the sixaxis controller but it still doesn’t work on my rooted samsung galaxy j7 with android version of 5.1.1. Still can’t show the bluetooth address of my phone and it keeps saying that “could not find stack manager interface in library”. What should I do? I want your app badly sir. Please help me as soon as possible. Thanks

  34. Jadog

    I side loaded on my Nvidia Shield TV (since it’s not natively supported yet), but when I select ‘Start’, I am getting the message “error: only position independent executables (PIE) are supported.” How do I get around this?

    • Dancing Pixel Studios

      Strange… Can you email me the file /system/build.prop from the device and I’ll take a look. Cheers.

      • Jadog

        I never heard back. Did you ever figure out why this is happening or a fix for this?

      • Jadog

        It is working now. The entire issue was the fact that the app wasn’t purchased with the account I was using on my shield tv. So I re-purchased using my google account registered on my Shield and it worked. Hopefully this will be available in the future for Android set-top boxes so we don’t have to sideload.

  35. Destiny

    Please fix issue on galaxy grand duos i9082 marshmallow in 0.9.0, got stuck on listening controller or sometime fake devices detected, Attempting workaround and led Light dualshock 3 turned off, on previous android version called Jb,Kk, and lolipop working as well, sory for bad english

  36. wil4d

    lov u man, working like a charm.. cyanomod here ;p

  37. MezaCorleehone

    Everything is going very well in my XT912
    Marshmallow 6.0.1

  38. Moggie Sidious

    Not working with rooted Remix OS or Phoenix OS / Android-x86-64,
    both are showing it trying to connect about six times throwing up some hci / missing libaries error.
    Onboard T420 laptop bluetooth chipset: Broadcom BCM92070MD_Leno

    • Dancing Pixel Studios

      Can you email me a screenshot of the errors in the output on the main app? Thanks!

  39. Long

    I don’t know that you have read it or not:
    Another bug I found in this version for Marshmallow is whenever you disconnect the controllers by manually or timeout, you can’t reconnect controllers back. I have to stop and restart the server to make it work. This is so annoying bug. Can you look at it, please ?

  40. ZuliuZ

    The new controller the comes with the S Type Xbox One supports BLUETOOTH, “For ease of use access for PC” they said, but all I heard is I can finally use an Xbox One Controller on android wirelessly. (without OTG dongle/win10 stick).

    Get ready to code an Xbox One Bluetooth Address changing app.

  41. Kallamamran

    Damned! I’m sooooo close…
    Have managed to pair my DualShock 3 with my phone and it works over BlueTooth, but… Trying the demo of Dreadhalls the headtracking works fine, but the analogue stick works the same way the digital Up-Down-Left-Right works. The smallest movement to the sides moves the “body” roughly 30-45 degrees at once = Unplayable.
    I can’t find any way to change this :'(
    Moving up and down works fine though. Really strange!!

  42. Cedric

    Hello !

    I’m stuck to “listening for controllers…” step.
    Bluetooth MAC address changed with Sixaxis Pair Tool 0.3.0. Doesn’t works, i keep getting an error :

    Getting bluetooth address…
    Attempting connection type 1…
    Driver starting…
    Could not find stack manager interface in library
    Touchscreen device created successfully
    Error: Failed to configure bluetooth
    Attempting connection type 2…
    Driver starting…
    Touchscreen device created successfully
    Successfully configured bluetooth
    Listening for controllers…

    And that’s all. I’m using a Lenovo Yoga Tablet 2 Pro 1380F with android 5.0.1 rooted. Do you have any idea ?

    Thanks you :)

    • Dancing Pixel Studios

      Can you check under your device’s Settings -> About Device -> Status and check to see if the bluetooth address shown there matches the address shown in the app. If it’s different, try pairing the controller with the different address and try again.

      If this is the issue, the beta version in my most recent post should have addressed this issue, so it will be fixed in the next release. It would be helpful if you could try the beta version and let me know. Thanks!

    • Dancing Pixel Studios

      The other thing to try is resetting the controller via the button on the back.

  43. Cedric

    The bluetooth address in settings was the same as the app, but i didn’t even know there was a reset button on the back of the controller lol :)

    Anyway, this solve my problem, thanks a lot for your advice and keep up the good work ! Cheers !

  44. strike

    Can you help me…..error from sixasis controler..bit sixasis checker is fix…
    Can not load bluetooth library and can not load HCI library

    • Dancing Pixel Studios

      Please let me know which device and firmware you’re running, as well as which versions of the main app and compatibility checker are installed.

      • strike

        my device is chuwi hi8 pro..compatibility chekers fix…
        but sixasis controller
        can not load bloetooth library and load HCI library

        • Dancing Pixel Studios

          Your device should be supported in the next official release.

          • strike

            Sixasis compatibility checker beta v 0.6.0c working..but sixasis controller v 0.9.0 not working.thanks for all……i am waiting next official release

  45. AKRX

    I tried the beta but everytime I download it it says can’t open file please help!!

  46. Paragone

    Not working on my Huawei P9 Lite (Android 6.0). I tried with the latest version of Sixaxis controller and Sixaxis compatibility checker, but the message in the two of them is the same:
    Getting bluetooth adress…
    Attempting connection type 1…
    Driver starting…
    Failed to configure firmware
    Error:Failed to configure bluetooth
    Attempting connection type 2
    Driver starting…
    Error: Failed to configure bluetooth
    Could not load bluetooth library
    Attempting connection type 3
    Driver starting…
    Could not load HCI library
    Error: Failed to configure bluetooth
    Attempting connection type 4…
    Driver starting…
    Could not set HCI raw mode
    Error: Failed to configure bluetooth

    It also does not show local bluetooth address… And before you ask I do have system/lib/hw/ I also tried opening that file in note editor, and it’s all in chinese, so could it be that?

    • Leown

      P9 Lite User here, exactly the same here.
      Dancing Pixel Studios please fix or answer!
      Thanks for your work until now mate

        • Davis

          Have you found a fix to this yet? I also get the same error on my S6 and my android box with 6.0.

  47. Nicks_911

    Compatibility checker worked but sixaxis app doesn’t shows the Bluetooth address although my device is rooted Nexus 6p on Android 7.0 using ds4. Please fix it have been waiting for years…it used to work on my moto x on KitKat back in years.

  48. Mattia

    thank you for your app. Now I can play some game on my new beelink gt1. The sixaxis seems to work well but I have a problem. When I use it as a gamepad and I press up on the dpad, a file browser opens… It seems that the up command is mapped to some command opening the browser. If I look at the mapping in the sixaxis app it seems that it is mapped correctly… Do you have any idea if this is something it is possible to solve?

    Thank you

  49. NewUser

    The app was working with my DS4 controller in Marshmallow Resurrection Remix for the Oneplus 3. But I turned off the app and turned on the phone BT and paired it with the phone through the normal android’s interface and it got connected. But after disconnecting it, the SixAxis app doesn’t connect to it anymore. The app turns on properly, the drivers gets loads correctly, it listens for a controller, but when I turn on the controller, it blinks for a few seconds, then it turns off. Could you know what’s the problem? Any way of assisting to fix it, or resetting any BT configuration files that got changed after pairing the controller to the phone?

    • Dancing Pixel Studios

      The DS4 controller uses a private encryption key which is not known by the Sixaxis app if you pair via system bluetooth. To solve this problem, simply pair the controller via USB using the SixaxisPairTool, or via OTG cable on your device. This will reset the private key, even if the master address was the same as before.

Comments are closed.