It is currently 13 Jul 2024, 02:09




 Page 1 of 1 [ 20 posts ] 
Author Message
 Post subject: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 01:45 
Absolute fan
Absolute fan
User avatar

Joined: 13 Aug 2018, 03:18
Posts: 1536
Has thanked: 456 times
Been thanked: 598 times
I recently acquired two industrial players and I've built a cable to talk to them. I thought I would document the process here:

1. Buy a male DB15 connector and a female DB9 connector.
From DB15 to DB9 connect:
  • GND-GND
  • TXD-RXD
  • RXD-TXD
  • DTR-CTS,CD,DTR,DSR
Pioneer sold this as Pioneer Cable # CC-13. PacParts still has at least some variant of this available for order, but it is of course quadruple the cost of making one.

2. Buy USB to RS-232C converter. I believe I purchased mine at RadioShack long ago. Mine was made by Prolific.

3. If you don't have Linux running somewhere, install it on VirtualBox. I used Debian 9. After the OS is done installing, go to Devices -> USB and select your USB/serial converter.

4. Ensure your player is set to 4800 baud. On most players (all?) this is controlled by dip switch two on the back. It should be off for 4800 (up position).

5. ls /dev should show ttyUSB0. You can begin communication with stty. For example stty 4800 < /dev/ttyUSB0; echo -e "OP\r" > /dev/ttyUSB0 should open the door.

6. If you want something a little more robust, install minicom. Start with minicom -s and go to device (A) and set to /dev/ttyUSB0. Go to serial port setup (E) and change speed to 4800. Disable hardware flow control. Save setup as dfl.

I'm currently writing a library to make it easier to interact with these players. Controlling these players through software is pretty cool and can be useful. For example, it is possible to disable repeat play which is pretty annoying on these players, set the player into test mode, change background from blue to black, play at half speed, get your player's hardware revision number, etc.

Next up is to buy the barcode software Pioneer made to see if barcodes can be created from the more useful commands.


Attachments:
Hello_LDDB.jpg
Hello_LDDB.jpg [ 100.3 KiB | Viewed 5026 times ]
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 03:40 
Jedi Master
Jedi Master
User avatar

Joined: 03 May 2004, 19:05
Posts: 8171
Location: Dullaware
Has thanked: 1285 times
Been thanked: 885 times
While I have no use for this I thank you for taking the time to post it.
It's pretty interesting and I'm sure others will try something with it.
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 12:14 
Absolute fan
Absolute fan
User avatar

Joined: 01 Feb 2018, 02:41
Posts: 2013
Location: Finland
Has thanked: 193 times
Been thanked: 404 times
My old PC actually has an on-board RS232 socket :o I wonder how that'd work.
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 13:36 
Advanced fan
Advanced fan
User avatar

Joined: 02 Aug 2019, 02:29
Posts: 660
Location: Australia
Has thanked: 52 times
Been thanked: 85 times
takeshi666 wrote:
My old PC actually has an on-board RS232 socket :o I wonder how that'd work.


It should work if it's a serial port.
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 13:45 
Jedi Knight
Jedi Knight
User avatar

Joined: 14 Jan 2010, 09:44
Posts: 6086
Location: Ann Arbor
Has thanked: 1378 times
Been thanked: 1189 times
All old PCs have serial ports and they are pretty much all the same. Even if your machine doesn’t have serial the OS still has all the underpinnings so a USB adaptor and it’s drivers are the most you’d need for Windows.
_________________
All about LD care, inner sleeves, shrink wrap, etc.

https://youtu.be/b3O-vHpHRpM
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 18:40 
Jedi Candidate
Jedi Candidate
User avatar

Joined: 02 Apr 2006, 21:20
Posts: 2125
Location: United States
Has thanked: 75 times
Been thanked: 132 times
I was thinking of trying to get an old mac but it might be easier to get an old PC. just wished I kept mine since I knew it as it was my family's.
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 19:03 
Absolute fan
Absolute fan
User avatar

Joined: 23 Jun 2017, 01:55
Posts: 1707
Location: United States
Has thanked: 1185 times
Been thanked: 360 times
I keep an old laptop around just for that RS232 port.
_________________
I have added a shop on lddb.com. Check it out, items are priced to sell.
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 22:33 
Jedi Knight
Jedi Knight
User avatar

Joined: 14 Jan 2010, 09:44
Posts: 6086
Location: Ann Arbor
Has thanked: 1378 times
Been thanked: 1189 times
I have a USB serial adaptor thing I got from Best Buy. I only use it to interface with the Megasquirt (DIY ECU) in my Miata. It worked with my MacBook in both Windows 7 and OSX so I think the 3rd party has this licked now.

At work I may be using a dozen serial devices at once all going into multiple serial hubs and USB adaptors. It’s really quite a common standard to interface industrial stuff where fads are mostly ignored and working standards are used until the last moment. We still run Windows 2000 because why the hell not when nothing could be more obvious than the fact that it works (20 years nearly) in that occupation; running non-networked test gear for example.

I think it would be cool to run this kind of thing on the simplest machine possible, no fans, 286 maybe. Commodore tools would be cool to see, Amiga or earlier even.
_________________
All about LD care, inner sleeves, shrink wrap, etc.

https://youtu.be/b3O-vHpHRpM
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 23:06 
Absolute fan
Absolute fan
User avatar

Joined: 13 Aug 2018, 03:18
Posts: 1536
Has thanked: 456 times
Been thanked: 598 times
It would be cool to create a bluetooth to RS-232 device to plug into the back of the player so your smartphone could function as a Level III remote control. Or to set certain settings on player power up.
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Aug 2019, 23:18 
Advanced fan
Advanced fan
User avatar

Joined: 02 Aug 2019, 02:29
Posts: 660
Location: Australia
Has thanked: 52 times
Been thanked: 85 times
cplusplus wrote:
It would be cool to create a bluetooth to RS-232 device to plug into the back of the player so your smartphone could function as a Level III remote control. Or to set certain settings on player power up.


Might be doable but I'm not a coder so I wouldn't know.
There's a guy that has made an adapter (OGX360) to run Xbox 360 wireless controllers through original Xbox controller ports. The programming even emulates the Steel Battalion controller (yes, that large expensive mech controller) by using 360 chatpad keys for the special buttons.

The adapter uses Arduino Pro Micro boards.

Original Xbox controller ports are essentially USB but using proprietary plug/socket. I say essentially because there's one extra wire there that USB doesn't need.
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 06 Aug 2019, 15:55 
Site Admin
Site Admin
User avatar

Joined: 07 Aug 2002, 23:37
Posts: 4635
Location: Tokyo
Has thanked: 310 times
Been thanked: 1210 times
gypsy wrote:
I keep an old laptop around just for that RS232 port.


Been using this for years at work, to take control of network devices (Cisco, Arista, etc.) on location via the CONSOLE ports.
Just needs a DB9-RJ45 adapter that usually comes with the devices.

https://www.trendnet.com/support/support-detail.asp?prod=265_TU-S9

Julien
_________________
HARDWARE DATABASE
HLD-X0/9 LD-S9 OPPO 105/205 SL-1200G
LDD-1 MSC-4000 R2144 PONTUS II C45 MC257
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 19 May 2024, 21:08 
Knows how to post
Knows how to post
User avatar

Joined: 19 Apr 2024, 19:41
Posts: 8
Location: United States
Has thanked: 10 times
Been thanked: 6 times
Hey this is a really cool project! I recently picked up an LD-V2200 and want to mess with controlling it via serial using a Raspberry Pi 3b. Did you ever make any progress with the library to interact with the player and Linux by chance?
_________________
Pioneer CLD-D704
Pioneer CLD-D504
Pioneer LD-V2200
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 19 May 2024, 21:56 
Honest fan
Honest fan
User avatar

Joined: 03 Mar 2019, 15:15
Posts: 105
Location: United Kingdom
Has thanked: 11 times
Been thanked: 23 times
Interesting that this thread should pop up to-day, as it's been my first ever day of LaserDisc serial communication.

I recently acquired an LD-V6100, and, after buying a cheap PCI Serial Port card for my Windows 10 PC, set about linking the two together.

First of all I tried the "DOS test" software which can be found here.

...running in "DOSBOX" (which needed a tiny bit of configuration to see my "COM3" serial port as "COM1", basically this: "serial1=directserial realport:Com3").

It worked but unfortunately it seems that the LD-V6100 (not supported by this software) has a different command set to the LD-V6000 (which is the option I used) so all I managed to do was toggle the on-screen display.

I then had a quick go with Windows Powershell, and cobbled together the appended. But with a lack of documentation, all I found out how to do was to toggle the display and switch the audio channels off and on...

[to use that, change the first two values in the Byte array to the command value you want - so if you want to send "ED", you send 0x45.., 0x44.., 0x0D - as 0x45 is the hex code for the ASCII letter "E" and 0x44 for "D". I think there should have been a way to send it as a single byte but didn't pursue that.]

My ultimate aim was to get some ancient MS-DOS LaserDisc training software working, but didn't get far with that - may continue that in a separate thread sometime...

 $port1 = new-Object System.IO.Ports.SerialPort COM3,9600,None,8,one
 $port1.Encoding = [System.Text.Encoding]::UTF8
 $port1.Open()
 $port1.Write([byte[]] (0x31,0x40,0x0D), 0, 3)
 $port1.ReadExisting()
 $port1
 $port1.Close()
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 19 May 2024, 22:40 
Knows how to post
Knows how to post
User avatar

Joined: 19 Apr 2024, 19:41
Posts: 8
Location: United States
Has thanked: 10 times
Been thanked: 6 times
Nice! I only started looking into this yesterday and found this thread. I need to build my CC-13 cable out of parts I ordered this morning, so hopefully I can start messing with the LD player over serial by next weekend. Thanks for turning me onto that controller software. Initially I was just going to connect to the player using the screen utility under Rapsbian and just start sending it commands as per the CLD-V2400/V2600 programmer's reference guide I found online, but I may give that controller software and DOSBOX a try too. Hopefully its compatible with the LD-V2200.

Let us know if you make any further progress on your end. Good luck!
_________________
Pioneer CLD-D704
Pioneer CLD-D504
Pioneer LD-V2200
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 19 May 2024, 22:47 
Honest fan
Honest fan
User avatar

Joined: 03 Mar 2019, 15:15
Posts: 105
Location: United Kingdom
Has thanked: 11 times
Been thanked: 23 times
yobagme wrote:
Hopefully its compatible with the LD-V2200.
Yes looks as though it should be okay, the LD-V2200 is on there:
Attachment:
Dosbox.JPG
Dosbox.JPG [ 31.94 KiB | Viewed 1680 times ]
yobagme wrote:
Let us know if you make any further progress on your end. Good luck!
:)
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 20 May 2024, 08:00 
Site Admin
Site Admin
User avatar

Joined: 07 Aug 2002, 23:37
Posts: 4635
Location: Tokyo
Has thanked: 310 times
Been thanked: 1210 times
https://manuals.lddb.com/LD_Players/Pioneer/Technical%20Bulletins/

For the cable wiring, CC-04, CC-05, CC12 and CC13 described in PIB #150002 - Pioneer Cable Specifications.

From PIB #150012, PIB #152002 and PIB #152102:

Pioneer LD-V8000 1200 / 4800 / 9600 (default)
Pioneer LD-V6000A 300 / 600 / 1200 / 2400 / 4800 / 9600
Pioneer LD-V6000 1200 / 4800 / 9600
Pioneer CLD-V5000 1200 / 2400 / 4800 (default) / 9600
Pioneer LD-V4400 1200 / 4800 (default) / 9600
Pioneer LD-V4200 1200 / 4800 (default)
Pioneer CLD-V2800 1200 / 2400 / 4800 (default) / 9600
Pioneer CLD-V2600 1200 / 4800 (default)
Pioneer CLD-V2400 1200 / 4800 (default)
Pioneer LD-V2200 1200 / 4800 (default)

If this can be useful.

Julien
_________________
HARDWARE DATABASE
HLD-X0/9 LD-S9 OPPO 105/205 SL-1200G
LDD-1 MSC-4000 R2144 PONTUS II C45 MC257
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 22 May 2024, 19:25 
Absolute fan
Absolute fan
User avatar

Joined: 13 Aug 2018, 03:18
Posts: 1536
Has thanked: 456 times
Been thanked: 598 times
yobagme wrote:
Did you ever make any progress with the library to interact with the player and Linux by chance?

I did, but the code here is much more usable:
DomesdayDuplicator PlayerCommunication
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 29 May 2024, 21:09 
Knows how to post
Knows how to post
User avatar

Joined: 19 Apr 2024, 19:41
Posts: 8
Location: United States
Has thanked: 10 times
Been thanked: 6 times
So I've had some success! Built the CC-13 cable as per the PIB #150002 document, then connected my LD-V2200 it to a Raspberry Pi 3B running RetroPie (Debian 10) using a DB9 to USB adapter, which was autodetected as /dev/ttyUSB0.

Using the link provided by yaffle2345 above, I downloaded the MSDOS Pioneer Test Program, installed and configured DOSBOX onto the Pi and transferred the executable over to a directory accessible to it. Thankfully, the application fired right up and was able to both connect to and control my LD-V2200! I can do anything from open/close the tray, play, step controls, chapter/frame search, enter/exit test mode, etc...

Attachment:
IMG_0552_optimized_500.jpg
IMG_0552_optimized_500.jpg [ 453.55 KiB | Viewed 1512 times ]

Attachment:
IMG_0553_optimized_500.jpg
IMG_0553_optimized_500.jpg [ 445.35 KiB | Viewed 1512 times ]


The application can be used from the Pi using a keyboard and monitor, but I was also able to forward its X session via SSH and launch DOSBOX and remotely control the player from my office laptop as well.

Attachment:
Screenshot from 2024-05-25 18-11-12.png
Screenshot from 2024-05-25 18-11-12.png [ 19.77 KiB | Viewed 1512 times ]


My next goal was to get the DAPHNE laserdisc arcade emulator to interact with the player, but no such luck yet. I installed DAPHNE from RetroPie's repos successfully and configured it to use a physical Pioneer LD player at 4800 baud as per the emulator's wiki, but it refuses to connect to the player. I may try an older version of the emulator to see if that makes a difference.

For now, all I've really managed to do is create the most inconvenient remote control for my LD-V2200 possible, but at least it works! :D
_________________
Pioneer CLD-D704
Pioneer CLD-D504
Pioneer LD-V2200
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 30 May 2024, 23:29 
Honest fan
Honest fan
User avatar

Joined: 03 Mar 2019, 15:15
Posts: 105
Location: United Kingdom
Has thanked: 11 times
Been thanked: 23 times
You're having some success then! Less so for me sadly.

My LD-V6100 doesn't work with the LD-V6000 options on that program. Well, a couple of them (not the display one though) toggle the display but that's about it.

I managed to get some of the old MS-DOS training software working and controlling the player though, and then running another app. to capture the serial port traffic, it showed this when started:

F
X
?P
==/16#W
A?U
U8009A11A11B10j10k10i11h10g11d
A?U
U8009A?F
F02151A?F
F02151A10D
A

I've found some documentation for the LDV-8000 Level III codes here, so for example "?P" is Player Status Request, and "?U" is a User's Code Request.

I'm not sure if I'm seeing both sides of the communication though - my serial capture app. is just putting everything in the 'write' and nothing in the 'read' box - so is what I'm seeing after the "?U" - "U8009A11A11B10j10k10i11h10g11d" - actually the response (it seems too short, apparently it should be 200 characters), or the PC sending some more stuff? Maybe I don't have that app. configured correctly (this is all rather new to me).

Another part showed:
13125S
A14250P

...which I think means "search to frame 13125, then play as far as frame 14250" - but I could be wrong. But this seems slightly terser syntax than the LD-V8000, which I think would be "13125SE14250PL", or something like that? So "SE" instead of "S", "PL" instead of "P" - so maybe the LD-V8000 Level III isn't the most compatible with the V6100 - or can the commands be shortened in some cases?

Anyway, there is probably more experimenting I can do myself, but if anyone has any insights that might push me forward, they'd be very welcome!
Offline
 Profile  
 
 Post subject: Re: Serial Communication with CLD-V Industrial Players
PostPosted: 05 Jun 2024, 17:47 
Honest fan
Honest fan
User avatar

Joined: 03 Mar 2019, 15:15
Posts: 105
Location: United Kingdom
Has thanked: 11 times
Been thanked: 23 times
Have been doing a bit more with this - my main object was to see if I could find any 'magic' codes that would do something with the mysterious features of the LD-V6100 (see separate thread) - video input, teletext feature, cartridge port - unfortunately I couldn't find any!

Here is my simple C# code though, which might be useful to someone at some point:

SerialPort serialPort;

private void btnConnect_Click(Object sender, EventArgs e)
{
    serialPort = new SerialPort("COM3", 9600, Parity.None, 8, StopBits.One);
    serialPort.DtrEnable = true;
    serialPort.DataReceived += SerialPort_DataReceived;   
    serialPort.Open();
}

private void SerialPort_DataReceived(Object sender, SerialDataReceivedEventArgs e)
{
    String t = serialPort.ReadExisting();
}

private void SendSerialCommand(String command)
{
    Byte[] array = Encoding.Default.GetBytes(command);
    serialPort.Write(array, 0, array.Length > 20  ? 20 : array.Length);
}

private void btnDisconnect_Click(Object sender, EventArgs e)
{
    serialPort.Close();
}

The "Level III" language this player uses seems different both to that on the earlier industrial players (LD-V6000 for example), and on later ones (LD-V4400, CLD-V5000 etc.). Unfortunately I can't find any documentation online for this 'dialect', but I've documented what I could make out using trial and error, which might be of use to someone, one day:

P        - play
xxxxxP   - play until frame xxxxx, then freeze
xxxxxS   - go to frame xxxxx (black screen) and freeze
xxxxx]   - go to frame xxxxx (approx) (pic search) and freeze
xxxxx\   - slow mo
[        - reject, open tray
W        - freeze frame, frame advance
V        - freeze frame, frame reverse
U        - freeze frame, no movement
X        - slow motion back
Y        - slow motion forward
Z        - stop
+        - play 106 frames then freeze

11D - display on
10D - display off
$D  - display toggle
*   - display off
00A - left audio off
00B - right audio off
11A - left audio on
11B - right audio on
00d - pic and sound off (squelch)
11d - pic and sound on

?C - returns chapter number, eg C01
?D - returns D8803 or D6000 (?)
?F - returns frame number (CAV) or time for CLV, eg F03100 => 31 mins
?M - returns 256 bytes, alternating blocks of "0"s and "F"s (?)
?R - returns R007F  (?)
?S - returns S00 (?)
?U - returns player status (examples below)
?V - returns V53 or V71 or v77 or V70 etc. (?)

Player status examples:
UD109 - playing
UD10A - playing
U8009 - frozen
UB109 - slow motion forward
UB209 - slow motion back
UC208 - reverse play
U9008 - searching
UFF00 - stopped
UFB00 - stopping/reading - empty
UF900 - opening/loading
UF800 - opened
Offline
 Profile  
 
Display posts from previous:  Sort by  
 Page 1 of 1 [ 20 posts ] 


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: