Homebrew 3DS Controller

  • Thread starter CTurt
  • Start date
  • Views 413,529
  • Replies 1,200
  • Likes 104

Sr. G

Well-Known Member
Newcomer
Joined
Aug 21, 2015
Messages
58
Trophies
0
Age
30
XP
77
Country
Venezuela
Anyone? Trying to get the circle pad to work as a joystick, but no luck.

try this:

trancepara said:
I got it working in 2.0.5!

1.) Download the vjoy SDK: http://vjoystick.sourceforge.net/si...egorised/11-redirect-vjoy2sdk?task=weblink.go

2.) In the archive, there is a lib folder. Take the vJoyInterface.dll inside that folder and replace the one bundled with 3DS Controller.

It should work. To test it, get 3DS Controller contected. Then type "Control Panel" in Cortana. Search for "USB" and then click on "Setup USB game controller" and then properties. The X/Y axis should know respond. :) Have fun!
 

Retrorampage

Member
Newcomer
Joined
Aug 17, 2015
Messages
6
Trophies
0
Age
27
XP
52
Country
United States
hmm.. I got every button to act as a joypad button (besides the new 3ds buttons, which I believe aren't supported), including the circle pad as the joystick. But for some reason, it will not read my d-pad? Is there something specific I need to map it to?
 

~Poke~

Well-Known Member
Member
Joined
Aug 18, 2015
Messages
260
Trophies
0
XP
144
Country
Is it possible to use both the Circle Pad AND the Touch Screen as (individual) joysticks? I have the circle pad working fine but the screen does nothing when it's set to joystick.

For people wanting steam support, you can use a program called x360ce to make it act as an xbox360 controller, which a lot of things support. Of course it's not great with only one joystick, though giving up abxy could work depending on what you want to play.
It's probably a better idea to map controls directly in the game if possible, but I've found that Life is Strange (and possibly other Unreal based games) doesn't allow this.
 
D

Deleted User

Guest
I've been trying everything to make this work on version 0.5... installing vjoy, changing the port from 8889 to 4001 to 5000... nothing worked. All I got was the normal black screen but none of my button inputs registered on my computer...

Then I realized I have to keep the 3DSController.exe running while the 3DS application is running.

It's stupid, I know, but just in case anyone else was having trouble, keep the .exe file running when you open up the homebrew!
 
  • Like
Reactions: ~Poke~ and CTurt

CTurt

Well-Known Member
OP
Member
Joined
May 3, 2015
Messages
73
Trophies
0
XP
317
Country
Version 0.6 released. Get it from here as always.

Changelog:

3DS Client:
  • Backlight disabled when not in use (less battery consumption),
  • New 3DS buttons and C Stick support,
PC Server:
  • DLL errors fixed,
  • Updated vJoy to latest version (fixes Windows 10 compatibility),
  • Screenshot code scrapped
  • 2 separate JoySticks can be configured,
  • 8 additional JoyStick buttons supported,

With thanks to @~Poke~ for some of the patches used in this version.

Unless there are any major problems with this release, I probably won't be doing anymore with this project.
 

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
Version 0.6 released. Get it from here as always.

Changelog:



With thanks to @~Poke~ for some of the patches used in this version.

Unless there are any major problems with this release, I probably won't be doing anymore with this project.
Sorry, but what can I do? I try to execute 3DSController.exe for the first time, and it only crashes asking for MSVCR120 (0.6 version, Windows 10). Should I download the DLL?
 

Sr. G

Well-Known Member
Newcomer
Joined
Aug 21, 2015
Messages
58
Trophies
0
Age
30
XP
77
Country
Venezuela
Sorry, but what can I do? I try to execute 3DSController.exe for the first time, and it only crashes asking for MSVCR120 (0.6 version, Windows 10). Should I download the DLL?

yes, you should download the dll.

Version 0.6 released. Get it from here as always.

Changelog:



With thanks to @~Poke~ for some of the patches used in this version.

Unless there are any major problems with this release, I probably won't be doing anymore with this project.

i'm going to test this, ty for the update c:
PD: can i post this hombrew in a spanish forum? (http://www.emudesc.com/forums/nintendo-3ds.105/)
 

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
EDIT -

Still can't use the touch screen as joystick or the tap as a button :'c
so sad...
Forget what I said in my last post. You're supposed to change values on the .ini file in PC folder:

cdcdcd.PNG


Did you already try that?
 

Sr. G

Well-Known Member
Newcomer
Joined
Aug 21, 2015
Messages
58
Trophies
0
Age
30
XP
77
Country
Venezuela
Forget what I said in my last post. You're supposed to change values on the .ini file in PC folder:

View attachment 24798

Did you already try that?

of course i did x'D with the Touch and the TAP
i'm with this since past week and nothing work, try to use the touch screen keyboard (L + R + X) as keys too but they don't work well.

(Viendo tu país, puedo hablarte en español. He jugado con esas configuraciones y no funciona, ni siquiera usar el circle pad como mouse)
 

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
of course i did x'D with the Touch and the TAP
i'm with this since past week and nothing work, try to use the touch screen keyboard (L + R + X) as keys too but they don't work well.

(Viendo tu país, puedo hablarte en español. He jugado con esas configuraciones y no funciona, ni siquiera usar el circle pad como mouse)

English:

The options you can put for Touch setting are MOUSE, JOYSTICK1 or JOYSTICK2. I was talking about the first thing you said, using it as a Joystick. The Tap option is nowhere to be seen in the code (I didn't check all of the files, though).

Español:

Las opciones que puedes poner para Touch son MOUSE, JOYSTICK1 o JOYSTICK2. Estaba hablando de lo primero que mencionaste, usar la pantalla como Joystick. La opción para tocar la pantalla para click del mouse no está por ninún lado en el código (aunque no revisé bien todos los archivos).
 

Sr. G

Well-Known Member
Newcomer
Joined
Aug 21, 2015
Messages
58
Trophies
0
Age
30
XP
77
Country
Venezuela
English:

The options you can put for Touch setting are MOUSE, JOYSTICK1 or JOYSTICK2. I was talking about the first thing you said, using it as a Joystick. The Tap option is nowhere to be seen in the code (I didn't check all of the files, though).

Español:

Las opciones que puedes poner para Touch son MOUSE, JOYSTICK1 o JOYSTICK2. Estaba hablando de lo primero que mencionaste, usar la pantalla como Joystick. La opción para tocar la pantalla para click del mouse no está por ninún lado en el código (aunque no revisé bien todos los archivos).

Español
Mira mas abajo (al final de hecho), está "TAP" que es el toque sobre la pantalla táctil, y está configurado como "SPACE" y no funciona.
De igual forma no puedes configurar la Touch screen como Joystick, no lo reconoce tampoco, solo funciona como mouse y nada mas.

English
oh well guys, still shit-chat, nothing important don't worry for this x'D
 

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
Español
Mira mas abajo (al final de hecho), está "TAP" que es el toque sobre la pantalla táctil, y está configurado como "SPACE" y no funciona.
De igual forma no puedes configurar la Touch screen como Joystick, no lo reconoce tampoco, solo funciona como mouse y nada mas.

ENG/Okay. I think I didn't take the needed time for reading all that. I hope to give it a better look later today or tomorrow, and if I'm able to change something for making it work I'll try, it doesn't look that hard, with a little of C experience, one could change the code easily and see why it's not working even with the JOYSTICK options.

SPA/Bien, creo que no me di el tiempo necesario para ver todo eso. Espero echarle un vistazo más tarde o mañana, si me es posible modificar algo para que quede lo intentaré, no se ve tan complicado, con algo de experiencia en C, podría modificarse fácilmente el código y ver por qué no responde siquiera a la opción de JOYSTICK.
 
  • Like
Reactions: Sr. G

~Poke~

Well-Known Member
Member
Joined
Aug 18, 2015
Messages
260
Trophies
0
XP
144
Country
Make sure you use the stylus for the touch screen, fingers are too unreliable. I tested touch screen as both joystick 1 and 2 after implementing and they showed up in the vjoy monitor, try look at that to see what's happening.
I didn't really look into the tap setting and it doesn't work for me either, I just map it to none to be safe :P
Also remember that if you have 2 things mapped to the same joystick only 1 will go through. I just realised that cStick has the highest priority in this which is probably not a good thing for o3ds users haha, but if you set it to none it'll work fine.

I have a few ideas for other things I can add, to bring the n3ds up to full xbox controller compatibility (currently has everything except stick buttons). Those ideas are using the volume slider as another axis, and having an option for more configurable buttons on screen. it's a low priority though, since being 2 buttons short is easy to work around.

Something else to keep in mind is that (I've heard?) cias don't have access to n3ds features, so if you want them run the 3dsx. I don't have a way to run cias so I can't test this :P

EDIT: Ok the big important change is you need to update vJoy to the one linked in the readme. If you don't want to, you can overwrite the included .dll with the one from the older versions of 3DSController. But yes, the included vJoy version was raised since people were having to replace it manually for windows 10 compatibility.
 
Last edited by ~Poke~,

Davi

~
Newcomer
Joined
Apr 19, 2011
Messages
29
Trophies
1
Location
São Paulo
Website
daviandrade.com
XP
230
Country
Brazil
Version 0.6 released. Get it from here as always.

Changelog:



With thanks to @~Poke~ for some of the patches used in this version.

Unless there are any major problems with this release, I probably won't be doing anymore with this project.

Is there a way to use two 3DS as controllers at the same time?

Also, there's a bug in the CIA version when using rxTools, after you exit 3DS Controller the screen brightness doesn't go back to normal.
 

~Poke~

Well-Known Member
Member
Joined
Aug 18, 2015
Messages
260
Trophies
0
XP
144
Country
Is there a way to use two 3DS as controllers at the same time?

Also, there's a bug in the CIA version when using rxTools, after you exit 3DS Controller the screen brightness doesn't go back to normal.

Not currently. If you configure vJoy to allow 2 virtual devices then it would be a trivial edit to make the 3DSController program output to the second device. Then you might be able to run both copies at the same time? I think it would work if you choose a different port for controller 2.
I think this would work, though the different port requirement means that you'd have to edit the ini on the 3ds side to make it connect to the second instance.
I can go compile a device 2 version if you like, and maybe make the output device configurable in the future.

I can't compile or run CIAs so I can't help with your other issue, though if you can compile it yourself then it'd be possible to just remove the screen dimming.

EDIT: Here you go, this is identical to 0.6 except it outputs to vJoy interface 2. Remember to change the port. If you're not interested in the vjoy side then you don't need this edit, 2 of the original will work with different ports (but no joysticks)
 
Last edited by ~Poke~,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Veho @ Veho: Yeah but not like this.