Single Handed PS4 Controller

Custom PS4 Left handed Joystick for a person recovering from a "Stroke"

Similar projects worth following
I have had a request to make a custom PS4 Left handed Joystick for a person who is recovering from a "Stroke", its using the Hori PS4 compatible controller internals.

I have had a request to make a custom PS4 Left single handed Joystick for a person who is recovering from a "Stroke"

Much of the design has been made using "Blender 2.80" , its been a challenge to build for strength and neatness with internal cable routing.

First step (above)  :- create a cradle for the main Hori PS4 Compatible board to sit in, then grow everything out from that.

first iteration AKA pistol grip.... with view-port for board....

....and its kinda ergo... however in the long run not so ideal, this idea was ditched when it made much more sense to place the board beneath the handle and allow easier access to the wiring.

I am using as a base, the internals of a  "Hori Wired mini Gamepad"  its a PS4 Official Licensed Product, the circuit board within is compact, which is why I plumped for this version.

I needed to decode the Human Interface Device signals, i.e. what button affects what part of the USB packet, I need access to this information more for debugging whilst the build is being built.

After fluffing around and installing "Device Monitoring Studio" to make this version was very restricted.

I remembered that My Robot Lab has a Joystick Service.... Bingo... Workio first time, without having to hijack the USB  (like DMS).

Now using the service I have a reference and test platform for developing the rest of the Joystick.

Here is what the internals of the Hori Joystick pad look like (long photo motage), best thing is that the silk screen text explains what is what... winwin.

Interesting note is the way they achieve one of the Analoge controls, using conductive foam to press against a non insulated SMD resistor. (great trick).

  • "D" -Pad Workio just like Magic (Will Merlin stay or Go)

    chiprobot11/14/2019 at 17:07 0 comments

    The "D"  pad (aka directional pad NSEW ) is now operational.

    It consists of 4 tactile switches fitted into a wedge shaped holder , which slots into a holding carrier shell which then slots onto the main Joystick.

    The  "Stick" part is also a cylindrical wedge shape which pivots at the bottom of the holder.

    Wiring is all routed internally.

    The back of the carrier shell is capped of with a 3D printed Lego compatible 2x2 addition... I am fighting my long attachment to the "Merlin" figure, as he might remain with the joystick when it exchanges hands, though my Elves will be glad to see him go..... :-(

  • PS4 Single Handed Joystick Digitals 4,5,6,7,10 - Analog's Lx,Ly,Rx,Ry Workio

    chiprobot11/14/2019 at 17:06 0 comments

    Mounted the DIgital Switches permanently with epoxy resin so no turing back now.

    The Top Joystick is also operational, the blue carriage can be rotated so the user can adjust for optimal comfort.

    ToDo List :-

    (1) Top "D-Pad"  (awaiting tactile switches)

    (2) Four Game buttons (aka Square/Circle/Triangle/Cross using conductive switches)

    (3) Bottom Joystick (with crossover mech. for reversing the direction with a DPDT Switch)

  • Menu Workio

    chiprobot11/14/2019 at 17:06 0 comments

    Custom Joystick for people who have use of only one hand.

    This is the first integrated working part of the controller aka "The Menu System" that enables the basic housekeeping of the Playstation 4.

    MRL is helping a great deal for debugging using the Joystick service.

    Its starting to take shape now... much tweaking though.

    The Wiring Loom is complete, I went for a plug/socket connector, which means that the controller will be easy to swap out and upgrade (if need be).

    For one handed use I have salvaged an old Canon camcorder hand strap,  as comfortable as a glove.

    Current iteration is below, ...... and yes that is a 3D print  Lego attachment point on top , a suprise addition so the person (or his son) can add extra customisation.

  • L1 trigger design Workio (Hori controller)

    chiprobot11/14/2019 at 17:05 0 comments

    Workio - First "Live" testing of the top trigger finger mech.

    The concept "Hori" uses is so simple and would make a great finger pressure sensor for InMoov.

    It's basically a bare un-insulated black carbon SMD resistor, a flexible conductive carbon coated dome sits on top of it, when it is pressed against the resistor it progressively shorts out the resistor underneath, giving a change in its resistance, soooo simple and effective.

    In the GIF above you can see the "ry" channel moving between -1.000 to +1.000.

    Digital 7 is activated because of the way I have installed the switch mechanism, it really needs repositioning.

    Quick mashup to test the trigger theory...

  • Hori Pad Key Mappings

    chiprobot11/14/2019 at 17:04 0 comments

    This is part of my PS4 Single handed Joystick controller.

    (not for confusion - the above graphic of Hori controller is not on the MRL Joystick service, its a paint mash for my reference).

    These are the mappings I have traced prior to desoldering the main board (just to keep a track of directions when shoehorned into the new system).

    I have a Question :-

    There are 5 buttons that do not show up on the MRL mappings.

    When I press the left side of the "Black left 'D' pad , digital direction NorthSouthEastWest" it brings up the "pov" mapping, pressing right/up/down does nothing and also pressing the "TP" (bottom central of unit).

    Using Free Device Monitoring Studio , the "D" pad appears as byte 05 in the packet 

    "0F" = nothing pressed and  then bits 1 2 3 4 for the North South East and West.

    TP button appears as bit 3 of byte 07 of the HID packet

    011957: Bulk or Interrupt Transfer (UP), 2019-10-12 15:29:58.2949908 +0.0039923. (1. Device: HORIPAD mini4) Status: 0x00000000 Pipe Handle: 0x4ca1cb0 (Endpoint Address: 0x84) Get 0x40 bytes from the device

     01 80 80 86 7B 0F 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

View all 5 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates