Ryojōhen controller (Sony PlayStation 2)

Overview

NameRyojōhen controller (Sony PlayStation 2)
Release dateJuly 25, 2002
Serial codeTCPP-20014
Notes

Supported software (WIP)

SoftwareSupportNotes
BVE Trainsim (PC)NativeSupported via input plugin.
Densha de GO! Final (Sony PlayStation 2)Native
Densha de GO! Professional 2 (Sony PlayStation 2)Native
Densha de GO! Ryojōhen (Sony PlayStation 2)Native
OpenBVE (PC)NativeSupported via input plugin.

Technical details

This controller has two handles (4 power notches and an analogue brake handle with three areas), a D-Pad and 7 buttons (Select, Start, Horn, Announce, Camera, Left doors, Right doors). In addition, it provides a 3.5 mm jack connector to plug a horn pedal.

Internally, it is a HID device with a vendor-specific class.

Product nameTAITO_DENSYA_CON_T03
ManufacturerTAITO
Vendor ID0x0AE4
Product ID0x0007
Serial numberTCPP20014
USB standard descriptorLink
HID report descriptorLink (recreated, not provided by actual device)

Input

The controller sends reports to the host (PS2) formed by 8 bytes:

Byte 1Byte 2Byte 3Byte 4Byte 5Bytes 6-8
BrakePowerPedalD-PadButtonsUnused

Unlike traditional controllers, the brake handle is analogue and the brake byte reflects the position of the handle precisely. There are three areas with the ranges listed below, plus the emergency notch.

Reduce pressureKeep pressureIncrease pressureEmergency
0x23-0x640x65-0x890x8A-0xD60xD7

When using the controller with Densha de GO! Professional 2 or Densha de GO! Final, the brake handle is interpreted as having 6 brake notches + emergency. The aproximate byte range for each notch is listed below (taken from Densha de GO! Professional 2).

ReleasedB1B2B3B4B5B6Emergency
0x23-0x2A0x2B-0x3C0x3D-0x4E0x4F-0x630x64-0x8A0x8B-0xB00xB1-0xD60xD7

The values for the power notch byte are listed below.

NP1P2P3P4Transition
0x000x3C0x780xB40xF00xFF

The pedal byte has two possible values depending on the state of the pedal.

ReleasedPressed
0xFF0x00

The D-pad byte represents the state of the arrow buttons. If two opposite directions are pressed simultaneously, the result is Center unless a third button is pressed.

NNEESESSWWNWNone/Center
0x000x010x020x030x040x050x060x070x08

The button byte uses seven bits to represent the state of the physical buttons. 0 means that the button is released and 1 that it is pressed. A bitmask can be used to retrieve the buttons.

Button 1Button 2Button 3Button 4Button 5Button 6Button 7
HornAnnounceCameraRight doorsLeft doorsSELECTSTART