Jump to content

Christie LHD700 Shutter Control


Merten

Recommended Posts

Hi,

 

I am trying to control the shutter of a Christie LHD700 (resp. Eiki LC HDT700, which is technically the same projector).

I can communicate with the projector via telnet, using the windows console. The commands work fine: 'C0D' for shutter close, 'C0E' for Shutter open. I am using TCP with port 10000, as written in the projector's manual.

 

In Watchout I created a String Output cue (also TCP). I type '$0D' after the command, as requested in several other threads (carriage return). So it gets 'C0D$0D'.

Unfortunately I cannot establish a connection between WO and the projector and I get a message, that the data was not sent.

 

I know, there a some threads about this topic like this one:

http://forum.dataton.com/topic/7-christie-lx505-control/?hl=lx505

But the last post in this thread says "it solved all my problems", with a link to another thread (http://www.dataton.com/forum/viewthread/93/), which doesn't exist anymore. Perhaps it will also solve all my problems...

 

I think something is wrong with the syntax, perhaps s.o. can help?

 

 

 

 

 

Link to comment
Share on other sites

  • Moderator

From what you describe, I do not think the issue is with your string cue.

I would be looking at any potential network issues

or possibly the String Output definition

output_string-TCP.png

 

 

Was Telnet run on same computer as watchmaker testing?

Is there a firewall or any other potential network obstruction?

(Applications like telnet and watchmaker on the same computer

can still be individually blocked by a firewall, for example)

Link to comment
Share on other sites

I get a message, that the data was not sent

 

This sounds like WATCHOUT can't connect to the destination IP address and port. So I agree with Jim, try connecting from that very same computer (presumably your production PC) using TELNET, and make sure there's no firewall getting in the way.

Link to comment
Share on other sites

Thanks for the quick feedback!

 

If you have been typing the command with quote marks, eg 'C0D$0D'

try without quote marks, eg C0D$0D

I didn't use the quote marks in WO ;) They were just to make clear, what's the code I used.

 

 

This sounds like WATCHOUT can't connect to the destination IP address and port. So I agree with Jim, try connecting from that very same computer (presumably your production PC) using TELNET, and make sure there's no firewall getting in the way.

Yes, the PC with Telnet is also the production computer, where Watchmaker is running. No problems when using with Watchout so far. The firewall was turned off and I made a rule in the firewall, that port 10000 should be open. But I will look at this again.

 

I will try with another PC today and let you know how.

Link to comment
Share on other sites

Thanks for the quick feedback!

 

I didn't use the quote marks in WO ;) They were just to make clear, what's the code I used.

Well then, try with the '....' quote marks as that is the syntax protocol for Watchout string output. Can't recall if it is a single ' or " marks. I'd try these -

'C0D$0D'

'C0D'$0D

"C0D$0D"

"C0D"$0D

 

My guess is the second one above where only the string command is encased with quote marks.

 

Thomas

 

Link to comment
Share on other sites

  • Moderator

Just tried it with basic "run" and "halt" command strings. Watchout required "..." to encase the string. So in your case, it should be -

 

"C0D"$0D

"C0E"$0D

 

Thomas

 

I am not sure I understand what you are saying.

The string cue in WATCHOUT does not require quotes around ASCII text.

If you can type them in telnet without the quotes,

they should work the same way from a watchout string cue.

Granted, the non printing carriage return character

is different (typing $0D where you hit the return key in telnet).

 

OP

At the end of the day, it still sounds like the connection is failing.

Without a connection, the strings are never sent.

And that is why watchout displays a message to that effect.

If the connection is valid and the string is sent,

good string or bad string for the receiving device does not matter.

WATCHOUT will not give any error message for a string that the receiving device does not like.

WATCHOUT does not monitor any return traffic from the device, 

it blindly sends the string to the connected device and nothing more.

So while it is possible the string is wrong, if the connection is good,

you will receive no notice from WATCHOUT about a bad command, etc.

 

So if your problem was syntax, you would not be receiving a failed connection message.

You must get rid of that message before you can worry about the string syntax.

 

Opening a single numbered port in the firewall is probably not good enough,

you must open all ports used by the watchout application.

For the purpose of testing, please disconnect from any internet or other non-essential connection

and turn off the firewall.

Link to comment
Share on other sites

Okay, let's not talk about quotation marks anymore... :rolleyes:

 

Thanks for the detailed reply, jfk. I tried with an other PC. No firewall active, all ports open, telnet works fine, but I still get the message "failed to send data". But I will look further into network settings, as you made clear, that this must be the reason.

 

I'll report!

Link to comment
Share on other sites

Merten.

 

You can use a couple software tools to figure this out. It sounds to me like the port has remained open or some such when it works in telnet then fails in watchout. many devices do not like multiple connections or clients.

 

I like to use Packetsender, and wireshark to figure this stuff out. you could also need a line feed or something else.

 

When you do telnet do use port number 10000 also or port 23 default telnet port ? are you using any other parameters when starting telnet ? also isn't port 10000 a udp port ? you might try to send as udp from watchout, but if it is working in telnet that doesn't really make sense.

 

at any rate if you install wireshark and run it while doing the commands in telnet, you can go back and read the conversation and take the payload out of the packet that worked for you and put that into watchout either in hex or ascii. 

 

gpeeler

Link to comment
Share on other sites

Thanks, gpeeler!

 

I tried to read out the commands with wireshark before and it seems that, there is a connection between PC and projector. But I didn't know, where to find the telnet commands I was sending. I can see that there is a conversation in both directions. With Teltec I'm sending over TCP port 10000.

Port 10000 is the default port of the "Network Data Management Protocol" (ndmp). Wireshark also shows this port as ndmp.

 

Another thing is, that I have to type in a password (projector's network password) before I can type in the commands into the console. It is by default 0000. Perhaps this has to be included in the String that is send by Watchout?

 

I also controlled the projector by using the browser. Wireshark tells me, that in this case, tcp port 80 (http) is used. But this port doesn't work for the teltec commands in the console.

Link to comment
Share on other sites

when you do a working telnet command, how do you initiate the telnet session exactly ?

 

are you at a prompt and type : telnet "ip address" "port number" or do you use any other parameters ?

 

wireshark is not always right about what type of traffic is on a port. It is telling you what the port is normally used for. 

 

can you remove the password from the projector, at least for testing ? this is a common problem with panasonic projectors and the de facto action is to remove the password from the projector so you do not have to generate a security hash before each command you send.

 

i would progress in the following way. remove the password if possible so you can start a telnet session and make the shutter work without entering any password, from any where. read the payload of the working packet in wireshark and use that data to prove the command string in packetsender. the payload will be the last set of hexadecimal characters, and you should see your 0D carriage return there also.  if you can get it to work in packet sender then it will definitely work in watchout. i am pretty bored here so i might look at  your projector manual.

 

GP

Link to comment
Share on other sites

Hi,

 

firstly, thanks for your time!

I set the projector's network password on default, so there should be no password necessary, as said in the manual. There is no option to remove the password, though.

In the telnet session I get asked for a password, but I don't have to enter it. I can go on just by pressing ENTER.

 

This is what I type in the telnet session (right side):

 

C:\...\...              >  telnet

Microsoft Telnet>  open 10.112.81.61 10000

PASSWORD:        ENTER

Hello

                              C0D                                      (for shutter close)

 

regards,

Merten

Link to comment
Share on other sites

OK, so you need to do the same when firing off this command from WATCHOUT. I.e., press Enter the first thing you do (by inserting a carriage return, presumably), then type the command. Hopefully this additional "blank line" will not upset the projector on subsequent commands. So your command string should look like this:

 

$0DC0D$0D

 

Where the first carriage return (aga $0D) takes care of the empty password entry, and the following characters (and the terminating carriage return) is the actual command.

 

Hope this works out for you!

Link to comment
Share on other sites

Yes, I tried this command and others before. With Packetsender I can manage, that the projector answers with "Hello", like in the console wit telnet. But I have to send the ASCII packet (\n --> for new line?) several times until the projector responds. After that, I cannot go any further to send the C0D command, as the procedure starts over again and I get asked for the password.

 

C0D is an ASCII command, right?

 

A strange thing is, that the projector communicates with another port of the pc, everytime I send a packet. Upwards from 50500.

Link to comment
Share on other sites

Hi Mike, I tried that combination, and several others, before.

 

With Packetsender, I tried to get a connection to the projector and send the commands. When I was sending a packet, the projector replied wit PASSWORD. Just like in the console with telnet. Then I had to send the command \n several times.  ( \n is the ASCII code for new line / carriage return.)

After sending this for about 10 times, the projector answered HELLO. So a connection should have been established and I tried the C0D command to close the shutter. But everything I send from then on, throws me back to the PASSWORD.

 

Any chance, the missing thread http://www.dataton.com/forum/viewthread/93/ gets revived?

Link to comment
Share on other sites

If there's no known and predictable sequence of characters that can be sent to the projector after opening the TCP connection to make it behave the way you want, it may not be possible to do from WATCHOUT. But that sounds quite unlikely to me. Surely, the whole point with having a command protocol is to enable the control from external system by sending a command string to the device.

 

Page 51 of the projector's manual found here

 

   https://www.christiedigital.com/SupportDocs/Anonymous/020-000446-01-Christie-LHD700-User-Manual-NET.pdf

 

seems to imply that you need to wait for the string "Hello" from the projector before you can send any commands to it. This almost make it sound as if the network protocol is designed to be used by a human typing at a terminal. Why would a control system be interested in getting a "Hello" prompt? If this is indeed the case, I don't think you can make it work, since there's no way to make WATCHOUT await a "Hello" string from the projector before proceeding with the command.

 

Have you talked to Christie about the problem you're having?

Link to comment
Share on other sites

  • Moderator

... Then I had to send the command \n several times.  ( \n is the ASCII code for new line / carriage return.) ...

 

so to generate the equivalent to \n (new line / carriage return),

in WATCHOUT's string cue you would type

$0A$0D

Link to comment
Share on other sites

  • Moderator

Thanks, jfk!

Do I always have to use capital letters in WO?

In Packetsender I discovered this $0A for \n before, but written $0a....

 

Gonna give it a try!

I believe WATCHOUT will handle both cases. Easy enough to try.

 

I can confirm Mike's belief, tested it,

and either upper or lower case letters will work the same when defining hex values

in the WATCHOUT String Cue.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...