Green Alex's Wii U gamepad w/ Rpi3

Want to show off your own project? Want to keep a build log of it? Post it here!
Post Reply
Green Alex
Posts: 9
Joined: Sat Jul 15, 2017 1:21 am
Been thanked: 1 time

Green Alex's Wii U gamepad w/ Rpi3

Post by Green Alex » Fri Oct 13, 2017 7:29 am

Hello sudomoders !
Here's my version of the Wii U gamepad-Rpi3 with Recalbox inside !
Thanks to banjokazooie of course for inspiring (and more) a noob like me, but also to Iriemars, Marty33, Yaya, Flippy and I'm sure I forget some people...
Image

Image

As you can see, I achieved a few steps, but stil some work to do...

Plastic modifications = OK
Paint = OK
Inputs control with Teensy = OK
Screen position, and test = OK

Sound = Not yet
(Pam8403 amp, original Wii U speakers, 10kOhm pot)
Battery power = Not yet
(18650 battery x 2, TP4056 charging circuit with battery protection, Powerboost 1000 Basic)

And the big question, what to do with the Raspberry ?..
Most of the people modify it by removing usb, RJ45, etc. It's indeed very efficient... But I don't like to destroy Raspberries, and would like to keep it safe, and maybe put it in the back like Flippy's one (http://www.sudomod.com/forum/viewtopic.php?f=13&t=1720). I'm not sure, but I think I'll try to go this direction...

I'll have a few questions, but will need to make some more tests before...

Just one simple for today : do you use the original Wii U speakers ?
Image
I tested it with the Pam8403 amp and the 10Kohm potentiometer but the sound was very bad and weak. I imagine I did something bad but can't find what. I'll spend some time on the forum to find a solution...

User avatar
YaYa
Posts: 1331
Joined: Mon Jun 26, 2017 12:42 pm
Location: South West of France
Has thanked: 480 times
Been thanked: 427 times
Contact:

Re: Green Alex's Wii U gamepad w/ Rpi3

Post by YaYa » Mon Oct 16, 2017 4:25 pm

Hey thank you for mentioning me :D

Your sound problem should be related to you pot wiring. Verify your wires !
Do you use a 5 pin pot ?
ORDER a set of decorative vinyl label stickers for DMG GBZ projects--->ckick
Comprehensive guide to save RAM/CPU/power on a GBZ--->click
YaYa's first GBZ - Kite's SAIO - Big Battery - NO Glue - DC Jack - minimum case mod--->click
My STL files, stickers, game box... to download--->click

IrieMars
Posts: 30
Joined: Wed Oct 19, 2016 1:52 pm
Has thanked: 2 times
Been thanked: 11 times

Re: Green Alex's Wii U gamepad w/ Rpi3

Post by IrieMars » Wed Oct 18, 2017 2:23 pm

"I'm helping"

Looking clean, and thanks for the shot out. As for your Pi, have you considered a PiZero? As for the speakers, I used the originals (or at least the one's that came in the shell I ordered) and to be honest I ended up using a amp with a built in POT. I tried using the black dial one Banjo used but got a really weak sound and no real control (I may have wired it incorrectly though). You could also skip the POT and use use hot keys to control the volume. Good luck and keep us posted.

reke
Posts: 26
Joined: Mon May 01, 2017 11:52 pm
Has thanked: 2 times
Been thanked: 1 time

Re: Green Alex's Wii U gamepad w/ Rpi3

Post by reke » Sun Oct 22, 2017 10:34 pm

did you have recalbox??
my analog stick axis left and right are inverted, can you help me??

Green Alex
Posts: 9
Joined: Sat Jul 15, 2017 1:21 am
Been thanked: 1 time

Re: Green Alex's Wii U gamepad w/ Rpi3

Post by Green Alex » Tue Nov 07, 2017 4:37 am

Yep, Recalbox !
And the same issue, even by inverting directions in the Teensy code. I just posted on the Recalbox forum to find a solution...
Did you try to change the code, like Dark Wizard explain it in his thread ?

Code: Select all

// Analog Joystick Values required for inversion
int AnalogMap[] = {JoyRHorz, JoyRVert, JoyLHorz, JoyLVert}; 
bool AnalogInvert[] = {false, true, false, true}; // If you want to invert a stick set a value to true
"In the example you can see that JoyRVert, and JoyLVert are both set to true. If you are having issues with your analog sticks going in the wrong direction just set it to true to invert the stick."

viewtopic.php?f=20&t=2285&start=10&hili ... amming+2.0

Maybe I made some mistakes, but it didn't work for me...

reke
Posts: 26
Joined: Mon May 01, 2017 11:52 pm
Has thanked: 2 times
Been thanked: 1 time

Re: Green Alex's Wii U gamepad w/ Rpi3

Post by reke » Tue Nov 07, 2017 10:33 pm

Green Alex wrote:
Tue Nov 07, 2017 4:37 am
Yep, Recalbox !
And the same issue, even by inverting directions in the Teensy code. I just posted on the Recalbox forum to find a solution...
Did you try to change the code, like Dark Wizard explain it in his thread ?

Code: Select all

// Analog Joystick Values required for inversion
int AnalogMap[] = {JoyRHorz, JoyRVert, JoyLHorz, JoyLVert}; 
bool AnalogInvert[] = {false, true, false, true}; // If you want to invert a stick set a value to true
"In the example you can see that JoyRVert, and JoyLVert are both set to true. If you are having issues with your analog sticks going in the wrong direction just set it to true to invert the stick."

viewtopic.php?f=20&t=2285&start=10&hili ... amming+2.0

Maybe I made some mistakes, but it didn't work for me...
me too, din´t work for me, in retropie works but i do´nt like retropie, the only solution to work its conect all like iriemars,

and i use this code, its from banjoo

Code: Select all

const int numButtons = 19;  //digital 0-15, 18, 19, 22, 23

void setup() {

 Joystick.useManualSend(true);
 
 pinMode(0, INPUT_PULLUP);
 pinMode(1, INPUT_PULLUP);
 pinMode(2, INPUT_PULLUP);
 pinMode(3, INPUT_PULLUP);
 pinMode(4, INPUT_PULLUP);
 pinMode(5, INPUT_PULLUP);
 pinMode(6, INPUT_PULLUP);
 pinMode(7, INPUT_PULLUP);
 pinMode(8, INPUT_PULLUP);
 pinMode(9, INPUT_PULLUP);
 pinMode(10, INPUT_PULLUP);
 pinMode(12, INPUT_PULLUP);
 pinMode(13, INPUT_PULLUP);
 pinMode(14, INPUT_PULLUP);
 pinMode(15, INPUT_PULLUP);
 pinMode(18, INPUT_PULLUP);
 pinMode(19, INPUT_PULLUP);
 pinMode(22, INPUT_PULLUP);
 pinMode(23, INPUT_PULLUP);
  
}
  
byte allButtons[numButtons];
byte indexButtonPins[numButtons] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 18, 19, 22, 23};

void loop() {

  int rX = analogRead(4);
    rX = (rX - 512) * 1.8 + 512;
  if (rX > 1023)
    rX=1023;  
  if (rX < 0)
    rX = 0;
  
  int rY = analogRead(5);
    rY = (rY - 512) * 1.8 + 512;
  if (rY > 1023)
    rY=1023;   
  if (rY < 0)
    rY = 0;
    rY=abs(1023-rY);

  int rL = analogRead(0);
    rL = (rL - 512) * 1.8 + 512;
  if (rL > 1023)
    rL=1023;  
  if (rL < 0)
    rL = 0;
  
  int rR = analogRead(1);
    rR = (rR - 512) * 1.8 + 512;
  if (rR > 1023)
    rR=1023;   
  if (rR < 0)
    rR = 0;
    //rR=abs(1023-rR);
 
  Joystick.X(rX);
  Joystick.Y(rY);
  Joystick.sliderLeft(rL);
  Joystick.sliderRight(rR);

  for (int i = 0; i < numButtons; i++) {
    if (digitalRead(indexButtonPins[i])) {
      allButtons[i] = 0;
    } else {
      allButtons[i] = 1;
    }
    Joystick.button(i + 1, allButtons[i]);
  }
  
  Joystick.send_now();
  delay(10);
}

this works for me, the only problem is the home button, i mapped on L3

if you discover something let me know

Green Alex
Posts: 9
Joined: Sat Jul 15, 2017 1:21 am
Been thanked: 1 time

Re: Green Alex's Wii U gamepad w/ Rpi3

Post by Green Alex » Wed Nov 08, 2017 4:19 am

Thanks !
I don't unerstand how it can work with Retropie, and not for Recalbox :| ...
I think I'll try the Banjo's code, when I re-open the gamepad, next week.
Anyway, I don't use the home, tv ans all those bottom buttons. And the Zack Wizard's code is very complex, I didn' understand anything to it :shock: ...

Green Alex
Posts: 9
Joined: Sat Jul 15, 2017 1:21 am
Been thanked: 1 time

Re: Green Alex's Wii U gamepad w/ Rpi3

Post by Green Alex » Fri Nov 24, 2017 6:58 am

Beside my little Teensy problems, I’d like to allow my system to work on a power supply when the battery is out, but I'm not sure how to do this... My problem comes from the fact that the Powerboost 1000 basic doesn't charge the battery, and the battery charger provide only 1A, compared to the (almost) 4A needed by the system, it's a bit light...

I don’t mind having 2 different power connectors (one for the battery charging, one for the direct power supply).
I thought about a few leads, but don’t know if it will work… or make the battery explode in my face B-) :

Schematic :
Image

1 - Is it possible to connect a power supply directly to the Powerboost 1000 basic "power in" ? Didn’t find anything on this on the net… If so, is it ok if I just put a diode on the way to the + of the battery to protect it from getting power from the power supply ? And what should be the diode characteristics ?

2 - If not, can I put the power supply after the powerboost ? With a diode to protect it from getting power in his « power out » connector…

3 - If not… HELP B-) !!!


Shopping list :
- the power supply I’d like to use (need almost 4A) :
https://www.aukeydirect.com/en/aukey-pa ... ack-1.html
Or this one :
https://www.amazon.fr/dp/B01LPLLJUC/ref ... il_3?psc=1


- the micro usb/usb wire :
https://www.amazon.fr/Xiaomi-Redmi-Micr ... dpSrc=srch

- the micro usb connector :
https://www.pololu.com/product/2586


Banjo Kazooie's WiiU gamepad : viewtopic.php?f=13&t=1607
My own : viewtopic.php?f=13&t=4327

Thanks !

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest