JVC RS45 hex command use

638 views
Skip to first unread message

Rocky_C

unread,
Apr 22, 2012, 11:42:28 AM4/22/12
to comman...@googlegroups.com
Hello there,
 
I'm having difficulties controlling my rs45 projector over ip.
 
First off, i can control it using an external program(hercules setup utility)
 
the problem is control with commandfusion.
 
first off, the RS45 connects with a three way handshake, then he responds "PJ_OK" within 5 sec, one has to answer with "PJREQ", RS45 responds "PJACK", then within 5 sec one has to send the hex command.
 
Now my question is, how can i acomplish this?
 
the hex command to power up is 21 89 01 50 57 30 0A
 
I would really like some help here,
 
Thanks
Rocky

Jarrod Bell

unread,
Apr 22, 2012, 12:06:07 PM4/22/12
to comman...@googlegroups.com
What have you tried so far?

I would suggest adding a startup command or macro which sends the
handshake command(s).

Any hex you enter like this:
\x21\x89\x01\x50\x57\x30\x0A

Jarrod
> --
> You received this message because you are subscribed to the Google
> Groups "CommandFusion Software" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/commandfusion/-/CSQFXgQD9sgJ.
> To post to this group, send email to comman...@googlegroups.com.
> To unsubscribe from this group, send email to
> commandfusio...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/commandfusion?hl=en.

Barry Gordon

unread,
Apr 22, 2012, 1:15:58 PM4/22/12
to comman...@googlegroups.com

I assume this is a JVC unit.  I have one of theirs but I drive it from a PC (Which is controlled by the iPad) but the principles should be the same.  It is quite easy to do using Javascript, just a little tedious and a little logic required.

 

I am not exactly sure what you mean by a "three way handshake". It is only 2-way (controller- the ipad, and the projector).  there may be three or more steps  if that is what you mean.

 

In general you send the command and wait for the response at which time you send the next command etc. It does not matter if the command is an ack the sending is done the same way.  Forget about the timing on the iPad side, just send what you have to as soon as you get the feedback so you know what to send, even if you have to send nothing back (e.g. the sequence is done).

 

Whenever you send something start s setTimeout function to come back in 5 seconds and start a routine (function) to handle the timeout.  The probable cause is the PJ did not see what you sent, so send it again , keeping s counter of lets say 3 so you don't keep resending the command which may be bad. If you get the response, no matter what it is, then cancel the setTimeout befor you process the response (feedback).

 

Hope that helps

--

You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.

To view this discussion on the web visit.

Rocky_C

unread,
Apr 23, 2012, 1:36:28 AM4/23/12
to comman...@googlegroups.com
So far, I've created a new system (to the RS45 ip 192.16£8.1.233 port 20554) no hartbeat mode.
 
then 2 commands,
one that sends the PJREQ (command value: PJREQ)
one that sends the power on (command value: \x21\x89\x01\x50\x57\x31\x0A)
 
i've combined that in a macro that executes the PJREQ command and 100ms later it sends the power on command
 
 
Thank you guys for helping me out!
 
PS barry, three way handshaking is a TCP-IP protocol to create a connection. i'ts based on the server and the client to aknowledge eachother and to establisch a connection to a port. (SYN,SYN-ACK,ACK)
 

Rocky_C

unread,
Apr 24, 2012, 3:27:21 AM4/24/12
to comman...@googlegroups.com
If I want to send a plain "PJREQ" to the projector, how do i enter it in the command value?  For now i just entered "PJREQ"
 
Furthermore, as i said, i create a macro?  Is there a better way that you think might do the trick?
 
Kind regards
 
 
 

Jarrod Bell

unread,
Apr 24, 2012, 3:37:25 AM4/24/12
to comman...@googlegroups.com
Depends on the protocol for the device. Maybe it needs a carriage
return? \x0D on the end.

Macro is one way, or you can do feedback parsing via regex then use
onmatch item to send a command when the incoming command matches.

Jarrod

> --
> You received this message because you are subscribed to the Google
> Groups "CommandFusion Software" group.
> To view this discussion on the web visit

> https://groups.google.com/d/msg/commandfusion/-/S1PJpBe7gkwJ.

Rocky_C

unread,
Apr 24, 2012, 3:59:51 AM4/24/12
to comman...@googlegroups.com
Is there a way to know what protocol it uses?
 

Op dinsdag 24 april 2012 09:37:25 UTC+2 schreef CommandFusion het volgende:
Depends on the protocol for the device. Maybe it needs a carriage
return? \x0D on the end.

Macro is one way, or you can do feedback parsing via regex then use
onmatch item to send a command when the incoming command matches.

Jarrod

On 24/04/12 5:27 PM, Rocky_C wrote:
> If I want to send a plain "PJREQ" to the projector, how do i enter it
> in the command value?  For now i just entered "PJREQ"
> Furthermore, as i said, i create a macro?  Is there a better way that
> you think might do the trick?
> Kind regards
> --
> You received this message because you are subscribed to the Google
> Groups "CommandFusion Software" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/commandfusion/-/S1PJpBe7gkwJ.
> To post to this group, send email to comman...@googlegroups.com.
> To unsubscribe from this group, send email to

> commandfusion+unsubscribe@googlegroups.com.

Jarrod Bell

unread,
Apr 24, 2012, 4:01:50 AM4/24/12
to comman...@googlegroups.com
Ask JVC

Jarrod
To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/um4PIjjQE4cJ.

To post to this group, send email to comman...@googlegroups.com.
To unsubscribe from this group, send email to commandfusio...@googlegroups.com.

Barry Gordon

unread,
Apr 24, 2012, 10:37:29 AM4/24/12
to comman...@googlegroups.com

All commands from the RS45 end with a line feed ("\x0A)

--
You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.
To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/um4PIjjQE4cJ.
To post to this group, send email to comman...@googlegroups.com.
To unsubscribe from this group, send email to commandfusio...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/commandfusion?hl=en.

--

You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.

Rocky_C

unread,
Apr 24, 2012, 10:56:50 AM4/24/12
to comman...@googlegroups.com
I've got it working now.
 
the trick was maintain connection and hartbeat - reply mode.
 
now the problem is that for every command i have to create a macro.
 
Barry,
 
Can you tell me the JS script to send PJREQ, wait 1 second and then send a hex command?
 
thanks to all for the help so far

Barry Gordon

unread,
Apr 24, 2012, 11:11:56 AM4/24/12
to comman...@googlegroups.com

The protocol used by the JVC projectors is documented on their web site. It can be found at:

 

http://support.jvc.com/consumer/support/documents/DILAremoteControlGuide.pdf

 

 It is one of the most complete protocol documents I have ever seen with the exception of not detailing the RS232 protocol they use.  They do provide the methodology to develop Pronto hex strings from which the actual IR protocol can be deduced.

 

For those familiar with irp file format and notation the following are the key protocol parameters:

 

[Protocol]

Protocol=JVC

Modulation=PWM

Bit Order =LSB

Frequency=40000

Time Base=500

One=1,-3

Zero=1,-1

Form=[17 -8],d:8,f:8,[1 -45],d:8,f:8,[1 -100]

Repeat=1

 

This protocol uses a lead-in, then sends 16 bits consisting of an 8 bit device number and an eight bit function key code, it then has a delay and once again repeats the device code and the key code, and then ends with a suffix holding the line to its off state for 50 milliseconds (100*500) to ensure that two commands do not overrun. It is a PWM type code (Pulse Width Modulation) with the information carried in the off time of the IR bursts.

 

IR is not magic, it just needs to be understood.  The IRGEN on my WEB site will generate the correct JVC IR patterns and may be added to to send all of the IR commands they document.

 

With regard to LAN and RS232 use, a line feed is the terminating byte.  I find it convenient to define v=constants in Javascript for the prefix's they use to make the construction of commands quite simple.  For example the standard command prefix is "\x21\x89\x01" which might be set as a constant as var CMD="\x21\x89\x01". Similarly the Enquiry prefix can be set as var ENQ="\x3F\x89\x01".  A power on command can be set as var PWRON="\x50\x57\x31"

 

A full power on command can then be written as CF.send(CMD+PWRON+"\x0A") to the appropriate control system.  I prefer this methodology as it allows for easy understanding by a reader

Barry Gordon

unread,
Apr 24, 2012, 12:33:33 PM4/24/12
to comman...@googlegroups.com

OOPS, the detailed IR protocol I posted I used for the older PJ models the following is correct for the current crop of JVC projectors:

 

[Protocol]

Protocol=JVC

Modulation=PWM

Bit Order =LSB

Frequency=40000

Time Base=500

One=1,-3

Zero=1,-1

Form=[17 -8],d:8,f:8,[1 -100]

Repeat=1

 

This protocol uses a lead-in, then sends 16 bits consisting of an 8 bit device number and an eight bit function key code, and then ends with a suffix holding the line to its off state for 50 milliseconds (100*500) to ensure that two commands do not overrun. It is a PWM type code (Pulse Width Modulation) with the information carried in the off time of the IR bursts.

Barry Gordon

unread,
Apr 24, 2012, 1:13:20 PM4/24/12
to comman...@googlegroups.com

I don't like to do that without being able to test it.  Unfortunately the JVC PJ I own does not accept LAN commands only RS232. It is an older model.  I may be upgrading this year.

 

Reading the protocol document, The general outline of the process would be:

Send a command, and at the same time you do that, do a setTimeout to field any timeout errors. When the feedback for a command arrives and is verified, cancel the setTimout. When the feedback arrives and is verified you can then send the next command in the series. If the setTimeout specified function fires then you need to do any sort of recovery like re-sending the command, re-establishing the connection, notifying the user of the issue, etc.

 

In more detail for the PJREQ:

Request a connection, setting a 1 second timeout using setTimeout. If the timeout fires then the projector did not respond and take whatever recovery action is required. If there is a feedback (Projector response), check that it is "PJ_OK" and if so cancel the timeout and send "PJREQ" with a 5 second timeout using setTimeout.  The feedback to that should be "PJACK" If that is the case clear the seTimeout and send the desired command. If I was doing the Feedback analysis in JS I would just set the regex to "(^*)" which accepts all incoming data.

 

To establish a connection you can use CF.setSystemProperties to enable the system control for the PJ.  I would do that for each command sequence sent as this will allow multiple iPads to deal with the PJ at the same time.  If there is only one iPad - no harm no foul. When the required command has been sent, you can then use CF.setSystemProperties to close the connection If you are only going to have one iPad then Maintaining a constant connection will work but after CF makes the connection, the PJ will shut it down after 5 seconds of no activity at which time CF will try and re-establish the connection.  IMHO the PJ is normally not commanded often enough to have a constant connection.

 

If you know Javascript the above should be fairly clear.  If you do not know Javascript I strongly suggest you spend the time to learn it.

 

Hope that helps

From: comman...@googlegroups.com [mailto:comman...@googlegroups.com] On Behalf Of Rocky_C
Sent: Tuesday, April 24, 2012 10:57 AM
To: comman...@googlegroups.com
Subject: Re: JVC RS45 hex command use

 

I've got it working now.

--

You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.

To view this discussion on the web visit.

Brice Dem

unread,
Jul 17, 2012, 8:55:55 AM7/17/12
to comman...@googlegroups.com
Hello,

i have a JVC X30 and i would like to control it with RJ45.
I have done an alpha version of my project using your exchanges, so we could corrected it.
Else if you have working javascript for the JVC, it could be nice to share it.

Thank you
JVC_Test.gui.zip

Jarrod Bell

unread,
Jul 17, 2012, 10:08:14 AM7/17/12
to comman...@googlegroups.com
Very nice, thanks for sharing.

Are there any problems with your script that you need help with?

If the module is working, could you create a readme and I could share it on our github account if you like?

Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


--
You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.
To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/Fb8fd7ZKq3YJ.

Brice Dem

unread,
Jul 17, 2012, 10:11:01 AM7/17/12
to comman...@googlegroups.com, jar...@commandfusion.com
I'm sorry but this script doesn't worked. 
I try to translate this topic into a script but it is not working. 

Jarrod Bell

unread,
Jul 17, 2012, 10:17:48 AM7/17/12
to comman...@googlegroups.com
What exactly is the problem? I can't help you much without a JVC projector, but if you can explain the issue I might be able to help.


Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


On 18/07/12 12:11 AM, Brice Dem wrote:
I'm sorry but this script doesn't worked. 
I try to translate this topic into a script but it is not working. 

--
You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.
To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/KGxGM-YKN3gJ.

Brice Dem

unread,
Jul 17, 2012, 10:47:04 AM7/17/12
to comman...@googlegroups.com, jar...@commandfusion.com
Before we can send a command, we need to initiate a sequence described below.
We have to etablish a connexion with JVC, JVC have to send us the command "PJ_OK".
Then we have 5 seconds to send the command "PJREQ" to the JVC.
The JVC have to acknoledge with "PJACK" and we have again 5 sec to send the real command (power on, etc...).
So i try to initiate this exchange with this script.
I have to send command and receive anothers in the same send sequence.

Jarrod Bell

unread,
Jul 17, 2012, 10:53:06 AM7/17/12
to comman...@googlegroups.com
Can you show a dump of the actual communication from the JVC unit, using the software called 'Hercules'? (google it if you don't know about it).
Your regex and commands contain a lot of differences to the data you mentioned just earlier, details that could cause it not to work at all.

Do you get any errors reported via our debugger?


Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


--
You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.
To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/RBb8S-_wZAgJ.

Brice Dem

unread,
Jul 17, 2012, 10:59:02 AM7/17/12
to comman...@googlegroups.com, jar...@commandfusion.com
I have not yet the JVC at office so i can't test those things now.
In fact, i'm trying to develop the GUI with this group's help to have a GUI nearly working when the hardware will be available ;-)
I will try later, if someone haven't a working script for the JVC.

Rocky_C

unread,
Jul 18, 2012, 2:16:39 AM7/18/12
to comman...@googlegroups.com
I got it working but not with a script,  I've used a System that sends the request and keeps on sending.
That's the unfortunate thing about a system, you need to keep it alive.
But i'll keep following this.  be sure that whenever you have something, i can and i will try the things proposed here.
 
Kind regards,
 
Rocky

 

Barry Gordon

unread,
Jul 18, 2012, 10:34:00 AM7/18/12
to comman...@googlegroups.com

I am a little confused by what you are saying. What JVC model are you using?  When you say RS45 what exactly do you mean Serial (RS232)?  IP?

 

I have a JVC RS1 Projector (RS1) and have been driving it using RS232 for many years having written my own handler (driver) for a PC in Visual Basic. I do believe all of the JVC RS232 projector protocols are the same, with some PJ's having additional commands.

 

I do not understand why a system would have to keep sending if it were RS232.  Even using IP, I am not aware of a reason that the JVC protocol requires a "Keep alive" Communication.

 

From: comman...@googlegroups.com [mailto:comman...@googlegroups.com] On Behalf Of Rocky_C
Sent: Wednesday, July 18, 2012 2:17 AM
To: comman...@googlegroups.com
Subject: Re: JVC RS45 hex command use

 

I got it working but not with a script,  I've used a System that sends the request and keeps on sending.

--

You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.

To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/VgTlDC2CmS0J.

rocky crick

unread,
Nov 25, 2012, 5:39:48 AM11/25/12
to comman...@googlegroups.com
Hello Again,
 
I'm working on a more constant solution to control my JVC RS45 over IP (LAN)
 
I've done it in the past by means of a constant connection with hartbeat reply mode.  But this is not good/neccesary for a projector as you turn it on and after some time you turn it of.
 
So wanted to excecute the method that Barry Gordon proposed. 
So to get stared i wanted to connect to my projector.  When you connect to the projector is should reply with "PJ_OK".
 
This is where it goes wrong  when i try connect i do it by sending "PJREQ" as I presume that when you send a command to a system it first connects and then sends the command.
It doesn't work.  the connection closes immediatly.  It only works when i select "maintain constant connection"  then i can make it work, but that's not the point.
 
So in short,  how should i approach this, or where do i fail?  It seems to me that i have to change my way of connection with the PJ but I can't seem to place my finger on it.
 
 
Many Thanks
 
 

Barry Gordon

unread,
Nov 25, 2012, 12:06:46 PM11/25/12
to comman...@googlegroups.com

I do not believe you "Failed". When a constant connection is NOT maintained then you are correct in that as soon as you send a command the connection is made and then a disconnect occurs. Unfortunately the disconnect happens so quickly that the device I was working with (IP based relay board) did not have time to send the reply. I suspect the same may be true with an IP connection to the JVC projectors (I have a JVC projector, the RS-1, which does not have IP control only RS232).

 

I suggest you use the maintain constant connection and enable/disable the connection (control stack)  using CF.setSystemProperties.  That was how I solved my problem.

 

Perhaps the following logic will work:

 

1  When your system starts you disable the control stack in a CF.userMain function.

 

2  When you want to turn on the projector, enable the control stack, and send the PJREQ.  You should then get back the PJ_OK . Then send whatever additional commands you need pacing them using the projectors feedback reply.

 

3 When you are done using the projector, then turn it off, make sure it returns the Off state and not the cooling state and then disable the control stack. Actually I see no harm in leaving the control stack always enabled, and start by checking the Power State.

 

My suggestions in the above are based on what I do for my JVC RS-1 using RS232. Heartbeat mode was not needed for RS232 and I suspect it will not be needed for IP.

 

Having said the above; the Projector should have no issues with the connection kept active all the time. JVC was smart enough to always activate the RS232 (and I assume IP) receiver/driver circuitry as long as power was applied (plugged in).  The power mode (On, Standby, cooling, warning.) did not matter. I would set the heartbeat mode off, and use feedback (assuming the PJ responds to each command with some string) .

 

If you want a copy of my relay board communications program (It is IP based) drop me a line or wait a while and I will post it on my web site (www.the-gordons.net).

 

eMail me at my domain using the mailbox name of barry.

 

From: comman...@googlegroups.com [mailto:comman...@googlegroups.com] On Behalf Of rocky crick
Sent: Sunday, November 25, 2012 5:40 AM
To: comman...@googlegroups.com
Subject: Re: JVC RS45 hex command use

 

Hello Again,

--

You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.

To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/Ju23risGAaIJ.

iCNTRL

unread,
Nov 25, 2012, 4:50:05 PM11/25/12
to comman...@googlegroups.com
HI Rocky,

I have successfully controlled a JVC before and this is what i did

I have maintain constant connection ticked
To turn on i send a macro that sends PJREQ then 1 second later sends PJREQ then 1 second later sends \x21\x89\x01\x50\x57\x31\x0A
To turn off i send a macro that sends PJREQ then 1 second later sends PJREQ then i second later sends \x21\x89\x01\x50\x57\x30\x0A

I cant remember why i send the PJREQ twice but know i spent a bit of time trying to get it to work. The job is 12 months old and have never been back so guess its pretty reliable.

Hope this helps
Simon



Barry Gordon

unread,
Nov 25, 2012, 11:20:36 PM11/25/12
to comman...@googlegroups.com

Simon,

 

Do you handle feedback from the PJ or just ignore it?

 

From: comman...@googlegroups.com [mailto:comman...@googlegroups.com] On Behalf Of iCNTRL
Sent: Sunday, November 25, 2012 4:50 PM
To: comman...@googlegroups.com
Subject: Re: JVC RS45 hex command use

 

HI Rocky,

--
You received this message because you are subscribed to the Google Groups "CommandFusion Software" group.

To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/lO1YOUkrX1UJ.

iCNTRL

unread,
Nov 26, 2012, 3:50:49 AM11/26/12
to comman...@googlegroups.com
I just ignore it. I am only doing on, off, 16x9 and scope. I'm not sure why JVC chose to close the connection after a few seconds as this made it very awkward, so just choose to do control without feedback.

Clayton Vicente

unread,
Nov 26, 2012, 4:05:12 AM11/26/12
to comman...@googlegroups.com
Simon, i am control the JVC RS-45 with RS-232.
In your test do you have problem to use the "Enter" command ? Sometime it just does not work for me, for exemple when i am using the lens shift. Because that i had to put a ir control too.
I gave up to use the ip control when i maked my first test. I have a power conditioner, everytime after power off and then power on the power conditioner i cant power on the RS45 with the ip control.
Thanks.


Date: Mon, 26 Nov 2012 00:50:49 -0800
From: si...@homeandvision.co.nz
To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/5tvrEnjnhKEJ.

Barry Gordon

unread,
Nov 26, 2012, 8:09:40 AM11/26/12
to comman...@googlegroups.com
I would be surprised if the projector was closing the connection. I know that iViewer closes the connection after each transmission if maintain constant connection is not checked.

Sent from my iPad
To view this discussion on the web visit https://groups.google.com/d/msg/commandfusion/-/5tvrEnjnhKEJ.

Barry Gordon

unread,
Nov 26, 2012, 9:03:37 AM11/26/12
to comman...@googlegroups.com

You guys piqued my curiosity so I read the JVC manual re LAN operation.

 

1- JVC does close the LAN connection after 5 seconds of inactivity

2- To send a command you must re-establish the LAN connection, then send the command.

3- You must do (2) above for each command.

 

I suggest that the best way to deal with the JVC projector using iViewer following what I have read in their manual is as follows:

 

Design the GUI with the JVC control stack set for "Maintain constant connection", "No heartbeat", EOM as "\x0A". Setting the EOM this way will cause the iViewer to de-block received messages (feedback) on the \X0A byte being received. Set the feedback regex for the stack to be (^*).

 

During initialization of your project, in CF.userMain():

     Disable the JVC control stack using CF.setSystemProperties;

     Set the feedback processing for the JVC control stack to whatever you name your feedback processing function (e.g. JVCfeedback)

 

To send a command:

    Enable the Control stack using CF.setSystemProperties. This will send an open request to the PJ. You should get a feedback of PJ_OK.

    When the PJ_OK is received as feedback send the PJ_REQ command. You should get PJACK as feedback

    When the PJACK is received send the desired command. You should get an appropriate acknowledgement back for that command

    followed in a second feedback message if there is additional data to be returned by the projector.

 

I am willing to write a general purpose test/exerciser if someone sends me a JVC PJ for testing as mine does not have the LAN option.

Alternatively If someone wants to do the testing for me . . .   Beware I do all my work in Javascript so an understanding of Javascript will be very helpful. What I will need the tester to do is try the code as I provide it, and send me back the output from the debugger (PC running Safari or similar browser)

 

From: comman...@googlegroups.com [mailto:comman...@googlegroups.com] On Behalf Of Clayton Vicente


Sent: Monday, November 26, 2012 4:05 AM
To: comman...@googlegroups.com

Jarrod Bell

unread,
Nov 26, 2012, 9:06:26 AM11/26/12
to comman...@googlegroups.com
I had a whole reply typed up about this, but Barry you beat me to it :)

Either way, sounds like using the RS232 port is a whole lot easier. Use our LAN Bridge hardware and you will be able to control it via TCP with up to 25 simultaneous client connections (iPads, etc), or UDP with unlimited clients.
The LAN Bridge has an on-board RS232 port to handle the communications. Then no more connection closing which JVC would have implemented to ensure their single TCP socket was not always in use or locked out (no doubt it only accepts one connection at a time).


Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


Barry Gordon

unread,
Nov 26, 2012, 11:36:26 AM11/26/12
to comman...@googlegroups.com
I thought I posted a follow up.  I will double check. JVC does close the connection after 5 seconds and does require that the connection be fee stablished for each command.

Sent from my iPad

Clayton Vicente

unread,
Nov 26, 2012, 11:38:17 AM11/26/12
to comman...@googlegroups.com
Barry, i will always use the RS232 to control JVC projectors, but if you want i can test here.



Subject: Re: JVC RS45 hex command use
From: ba...@the-gordons.net
Date: Mon, 26 Nov 2012 11:36:26 -0500
To: comman...@googlegroups.com

Barry Gordon

unread,
Nov 26, 2012, 11:54:21 AM11/26/12
to comman...@googlegroups.com

I think you are making the right choice with RS232, and I am thinking of adding to the test routine RS232 capability via an iTach. It will just take me a little longer as I do have all the code in various other projects.

 

Regarding the testing I will do the RS232 capability on my PRJ, but do appreciate the offer to test the LAN capability.

 

From: comman...@googlegroups.com [mailto:comman...@googlegroups.com] On Behalf Of Clayton Vicente


Sent: Monday, November 26, 2012 11:38 AM
To: comman...@googlegroups.com

rocky crick

unread,
Nov 27, 2012, 12:22:39 PM11/27/12
to comman...@googlegroups.com
Thanks for the replies so far.
 
It's a b*tch that the connection closes after 5 seconds but i must live with it.
 
As far as RS232 goes, it's an option that would not prefer to use as there is a "cheaper" alternative.
 
I've been trying to forget the ACK and Replyfeedback part and focus on sending commands.
 
I've composed this script, but it doesn't give me anything.  I can't see the CF.log messages
 
I start this code with a button and a javascript action that says "startconnection.call"
 
function startconnection()
{
CF.setSystemProperties("JVC RS45IP", {enabled: true});
CF.log("JVC aan");
CF.runCommand("JVC RS45IP", "PJREQ");
setTimeout(function(){CF.runCommand("JVC RS45IP", "PJREQ");},500)
setTimeout(function(){CF.runCommand("JVC RS45IP", "RS45IP POWER ON");},1000)
setTimeout(function(){CF.setSystemProperties("JVC RS45IP", {enabled: false});},1500)
CF.log("JVC uit");
}
 
as i said this doesn't return anything.
 
Any thoughts?
 
TNX

Fiasco

unread,
Nov 27, 2012, 3:58:55 PM11/27/12
to comman...@googlegroups.com
RS232 is the best way to go. Doing ip might have lower hardware costs but that saving can quickly be eaten up by labor troubleshooting or site visits.

I toyed with IP control of multiple directv receivers briefly before going back to controlling them via 232 for this reason.

Jarrod Bell

unread,
Nov 27, 2012, 7:07:16 PM11/27/12
to comman...@googlegroups.com
No truer words have ever been spoken :) How much is your time worth?

As for the JavaScript question, the code assigned to your button should just be:
startconnection();



Regards,

Jarrod Bell
CommandFusion
www.commandfusion.com


On 28/11/12 7:58 AM, Fiasco wrote:

deric...@me.com

unread,
Dec 31, 2013, 12:33:04 AM12/31/13
to comman...@googlegroups.com
I tried this and it didn't work. In system manager I have IP address is 10.0.1.21 and Remote Port 20554. Connection Mode Always On and No Heartbeat. Am I missing something?
Also, when you say 1 second that should be 1000 milliseconds right?
I know this post is a year old. Has anything changed in iViewer that would make this easier?
Reply all
Reply to author
Forward
0 new messages