Skip to content

PSX Cable (using Arduino Nano) #22

@dekkit

Description

@dekkit

Initial instructions on how to build an adapter cable to connect your Wii mote to your PS1/PSX using a LCDGunverter.

What you'll need:

  • Psx cable with 1x male socket (ie ps1/2 control pad cable extension or old control pad cable from broken controller)
  • Cat 5 network cable (with an RJ45 socket)
  • Arduino Nano (+ a mini usb cable to connect to pc to program)

Optional - Arduino prototyping /breadboard wires. Multimeter to test connections.

Note: You should be able to build this without soldering and using just cable/wire joiners (if your nano comes with pins already soldered on)

Setting up the Ardunio Nano
Download and install the Arduino software (IDE), found at https://www.arduino.cc/en/Main/Software
Connect nano to pc
Open IDE
Go to "Tools" > "Board:" select Arduino Nano
As per following
20210512_222122

Check also the 'port:' (it can change each time you unplug and plug in nano to pc ..ie port 3 or port 4).

You should now be ready install the 'active cable' firmware to you nano.

The original can be initially downloaded from
https://github.com/charcole/LCDZapper/blob/master/Firmware/ActiveCables/PSXGun.ino

Although check here for updates as there a few changes required for the code (see main discussion issue for details).

**Scroll down for guncon45 version attached to the bottom of this post **

Compile and upload .ino to Nano
Connect nano to pc and open the arduino IDE
Open PSXGun.ino
Click on the verify button
Click in the upload button

Your nano should now be ready for wiring the connection.

Creating custom cables

There are 2x parts to wiring

  • nano to psx cable
  • nano to LGV via RJ45 cable

I used a cable from a broken ps2 controller and soldered then to a breadboard/ protoyping cables.

[UPDATE 6/6/2021]- old ps2 controlpad cables were a bad idea and caused so much wasted time. Suggest to open the male psx sockets and solder new wire!]

Original attempt (see other recent posts for better examples)
20210513_204945

This cable proved to be too long and resulted in strange issues (gun would only register in some parts of the screen).

For the RJ45 cable, i cut a cat5 network cable and stripped the wires and connected to breadboard style wires.

20210513_204830
Note: wire colors on the rj45 pic were different to my wiring diagram (as its the only colors i had left)

Make sure you test contuinity with a multimeter to ensure your wires correspond with the intended pins.

Wiring Arduino to LCDGunverter
This part should be straight forward - simply connect the cable pins to the nano.

118137473-95467600-b448-11eb-8258-371efc77384a
Correction 1: VCC on nano should use the 5v pin not the 3.3v pin to the rj45 (this is needed to pull up the tx signal to the nano otherwise it wont detect controller)

20210513_210217

images (36)

20210513_223125
Note:

  • ive powered the nano using the 7.3v motor line from the psx to the VIN pin to nano (you can optionally use pin 1 from the LGV rj45 instead which should give 4-5v)
  • i grabbed the 2nd ground from one of the pins at the end of the nano.

Setting up LCDGunverter to use adapter
Once connected and plugged in to psx and LGV, power on all devices.

In LGV, set to 'custom' cable and press A on wii mote.
Press Home on wii mote to bring up LGVmenu and use arrow keys to select IO Type.

  • set this to `Serial'

You should notice an smd led on the nano will turn on to indicate it is receiving data from the LGV.

Testing the results
This cable is still very much in development, so you may need to use another psx controller to get thru game menus as not all not all buttons from wii mote were working.

Initial signs are promising...
20210515_120911_HDR

20210515_121546_HDR

Updated - got it working great! (6/6/2021) - this .ino file worked for me! Includes some additional commentary in case anyone would like to make further modifications.
PSXGun_GUNCON45_ArduinoNano.ino.txt

Wiimote buttons layout

Dpad LEFT = guncon A
Dpad RiGHT = guncon B
Trigger (B) = guncon trigger

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions