Your Universal Remote Control Center
RemoteCentral.com
Philips Pronto Professional Forum - View Post
Previous section Next section Previous page Next page Up level

What's New
1/13/09 - 7:38 PM ET - The server transfer is now starting, and should be done within half an hour. During this period members will NOT be able to post to the forums.
1/08/09 - Budget clicker offers one-touch access to favorite channels; also new advanced home theater model with Z-Wave control.
1/07/09 - Two new color LCD controls capitalize on company's recent agreement to distribute One For All products.
1/06/09 - First voice-enabled remote for Vista Media Center Edition offers intuitive control.
1/06/09 - New enhancements in the pipeline include 2-way Z-Wave and 2-way serial communications.

Up level

The following page was printed from RemoteCentral.com:

RemoteCentral.com has moved to a NEW SERVER - and this is the OLD one!
Please visit http://www.remotecentral.com for current data.

Topic:How to control Meridian processor via RFX9600 and RS232?
This thread contains 35 posts (34 replies). Displaying posts 21 through 35.
Now viewing thread page 2 of 2.
Post 21 made on Tuesday December 23, 2008 at 11:20
...it's new!
Junior Member
Joined:July 2008
Posts:45
View Profile
Is there a way people like me to create RS232 feedbacks coming onto the panel, without knowing how to program?

Could a generic script be made (and sold) that one could enter the RS232 command for a button, and also the component's reply?

Would that be possible?
[ Reply | Quote & Reply
Post 22 made on Tuesday December 23, 2008 at 13:19
...it's new!
Founding Member
Joined:August 2001
Posts:1,230
View Profile
Probably not easily and with no real programming experience very hard. The issue with having someone else do it is testing. How do they test that whatever they have done works?
[ Reply | Quote & Reply
Post 23 made on Wednesday December 24, 2008 at 01:41
...it's new!
Junior Member
Joined:December 2007
Posts:32
View Profile
The code i have is still full of problems..

You need at least start going with some basic programming to get variables into panels. Otherwise the feedback info from the RS-232 interface is usless.

I am happy to share my code, once i ironed out the issues.
[ Reply | Quote & Reply
Post 24 made on Wednesday December 24, 2008 at 08:31
...it's new!
Junior Member
Joined:July 2008
Posts:45
View Profile
On Tuesday December 23, 2008 at 13:19, Barry Gordon said...
Probably not easily and with no real programming experience very hard. The issue with having someone else do it is testing. How do they test that whatever they have done works?

Barry,

If you had a button sending RS232 and receiving feedback, and it all worked ok....
Would the code be any different for another button except the 'send' and 'receive' commands?

Thanks
[ Reply | Quote & Reply
Post 25 made on Wednesday December 24, 2008 at 16:16
...it's new!
Founding Member
Joined:August 2001
Posts:1,230
View Profile
A lot would be similar and you would encapsulate most of the similar actions in a Javascript procedure. Let me try and explain by discussing an example from my HT.

My HT has grown through the years with Philips Pronto's. They changed, I changed. Before the Pro I used IR to talk to the PC that controls my theater. When dealing with IR the real meat of the pattern are two numbers the Device code and the key code. The PC only dealt with (Received) the NEC protocol which I then programmed the Prontos to send.

When the PRO came along I did not want to change the whole PC designe so I decided that the PRO would send two numbers (The device code and the key code)when a button was pressed. The PC would send back an "ACK" if the codes were valid and a NAK if invalid. Eventually it would also send back information about what was going on and what pronto page should be jumped to. All transmission would be using TCPIP.

On a button you see a one line prontoscript of the form SendIR(X,Y) where X is the device code, and Y is the keycode. As a specific example, SendIR("23,5"). The SendIR procedure expects a single argument, a string of text, which looks like two numbers separated by a comma.

The SendIR procedure sends this to the PC Using TCPIP and waits for the reply. Since I was emulating IR I did nothing to show a result. My theater has a 20 inch status display that shows the system state at all toimes in 36 point type (Remember it all started when there was no Pronto able to receive anything)

In the Pronto PAL, a program I use in my home, The PAL accepts a similar command, but transmits the IR pattern (among other things). In that case it accepts a TCPIP transmission that provides two pieces of text. The name of a device (e.g. SonyTV) and a key function (e.g. PowerON). Once again the button is a simple line of Prontoscript SendIR("SonyTV, PowerOn") and the PAl looks up its IR data base to determine what to send.

It gets more complicated based upon how you wish to handle the return data if there is any. Lets look at controlling the Meridean. You send it a RS 232 command. It sends back something, lets say more interesting than just and ACK or a NAK to indicate success or failure. Maybe it missed the message, maybe it got garbled. Lets say all is well and it tells you some status. What do you ant to do with it. Put it in a Pronto widget as a label? Parse it and see what it says taking other actions? Show it as a fancy display?

The PAL talks to my home automation system and can ask it all sorts of things when requested by the holder of a pronto. The Pronto holder can control all aspects of the house (lights, HVAC, Security, Pool system, RSS feeds, etc.) In fact when I go to bed, one touch of the pronto puts the whole house to bed (All lights off, Garage doors closed and locked, Perimeter security armed) and the house responds with a pleasant "Good night" spoken through the house audio system by a nice English ladies voice.

The possibilities become fairly copmplex as the equipment being contriolled provides more information when querried.

Hope that helps.
[ Reply | Quote & Reply
Post 26 made on Thursday December 25, 2008 at 09:45
...it's new!
Long Time Member
Joined:January 2006
Posts:69
View Profile
I'm looking into writing a meridian module so stay tuned.

I have borrowed a G series for development.

prontoProjects
www.prontoprojects.com
[ Reply | Quote & Reply
Post 27 made on Thursday December 25, 2008 at 11:46
...it's new!
Junior Member
Joined:December 2007
Posts:32
View Profile
This is the code that captures the response from a Meridian processor (861) for me:

rs232port1.onData = function(result)
{
var testlen = result.length.toString(10);
switch (testlen)
{
case "3":
// this is a 2 byte command issued (3 including the \r terminator)
break;
case "5":
// this is a 4 byte command issued (5 including the \r terminator)
break;
case "21":
// this is a remote command confirm and a full display (20 characters + CR ) that gets returned, most common reply
myAMP.source = result.substr(0,6);
myAMP.volume = result.substr(-3,2);
myAMP.preset = result.substr(6,11);
if(result.indexOf(".") > 0) {myAMP.state = 0;}
else myAMP.state= 1;
result ="";
break;
case "7":
// this is lenght of the answer on a request for information (6 bytes)
if(result.indexOf(".") > 0) {myAMP.state = "Standby";}
break;
default:
// unknow or unneeded aswer, just throw away
result ="";
break;
}
}

function PollSerial1()
{
data = rs232port1.match("","\r",0);
scheduleAfter(100, PollSerial1);
}
PollSerial1();


function SendSerialCommand(device,command)
{
switch (device)
{
case "AMP":
var terminator= "\r";
var outputstring = command + terminator;
var result = rs232port1.match(outputstring, terminator, 250);
break;
default: break;
}
}

I send information to it like:

SendSerialCommand("AMP","AP3701"); // switch HS mode on
SendSerialCommand("AMP","PN15"); // cinema mode
SendSerialCommand("AMP","CD"); // CD source
SendSerialCommand("AMP","VP"); // Volume up


So i fill some variables and use them to update a number of panels.
For the 861 the whole screen is echo'ed back if anything changes. So some other messages get captured in the preset screen sometimes, but that is usefull, and they get overwritten soon when the screen 'refreshes' anyway.


The whole RS-232 command structure is somewhat strange, but for simple feedback this works pretty good. You can make more case statements to capture all the screen info, there are like 7 or 8 different length of strings being reported back. But since i did not need that info (yet) i did not program that.


Perhaps this helps.

This message was edited by jacovn on Friday December 26, 2008 at 16:38.
[ Reply | Quote & Reply
Post 28 made on Sunday January 11, 2009 at 13:42
...it's new!
Junior Member
Joined:January 2009
Posts:2
View Profile
On Tuesday December 23, 2008 at 08:55, jacovn said...
I have 2 way rs-232 with meridian working (Source, Preset and Volume)

But if you have no programming skills it can be quite hard to get it going unless you copy it 1:1 but than you would be stuck with a layout you might not like..

Sorry, did not see there were more pages... Original question was where to find an example...

This message was edited by acjv on Sunday January 11, 2009 at 13:52.
[ Reply | Quote & Reply
Post 29 made on Sunday January 11, 2009 at 17:26
...it's new!
Long Time Member
Joined:August 2006
Posts:120
View Profile
Any progress on the Meridian prontoscript anyone?
[ Reply | Quote & Reply
Post 30 made on Sunday January 11, 2009 at 18:19
...it's new!
Long Time Member
Joined:January 2006
Posts:69
View Profile
A few weeks away..

Just tidying it up, Keith B has been testing on the 861, I've been developing and testing on G series.

Will be available for 9400 and 9600.

It's VERY VERY easy to get volume/sound mode/input on to any page in your Pronto config.

prontoProjects
www.prontoprojects.com
[ Reply | Quote & Reply
Post 31 made on Monday January 12, 2009 at 17:47
...it's new!
Long Time Member
Joined:August 2006
Posts:120
View Profile
I've got a Meridian G series. Will be interested to see what you have put together. You mean it's very easy if you already know prontoscipt? Or even for a beginner?

I'll have decide if it's worth it for me to purchase an RFX 9600. Right now I'm using a RFX9400. I assume if it works for a TSU9600 it will work with my 9800. Is that correct? thx.
[ Reply | Quote & Reply
Post 32 made on Monday January 12, 2009 at 18:21
...it's new!
Long Time Member
Joined:January 2006
Posts:69
View Profile
You will need an RFX9600 for it to work, pitty Meridian hasn't grown up and gone IP!

And it's easy to do even if you dont know any prontoScript.. Literally 1 line of code you place on your page under PS. Then put your labels on your page and your done. You can have vol, dsp, input. You can have one or you can have them all.

prontoProjects
www.prontoprojects.com
[ Reply | Quote & Reply
Post 33 made on Monday January 12, 2009 at 18:32
...it's new!
Long Time Member
Joined:August 2006
Posts:120
View Profile
On Monday January 12, 2009 at 18:21, tenchi said...
You will need an RFX9600 for it to work, pitty Meridian hasn't grown up and gone IP!

And it's easy to do even if you dont know any prontoScript.. Literally 1 line of code you place on your page under PS. Then put your labels on your page and your done. You can have vol, dsp, input. You can have one or you can have them all.

Gee maybe I'm going to bite the bullet and get into prontoscript! ;-) Will your script, which is written for the TSU9600, work on my TSU9800? thx.
[ Reply | Quote & Reply
Post 34 made on Monday January 12, 2009 at 19:00
...it's new!
Long Time Member
Joined:August 2006
Posts:120
View Profile
Ok. I started reading through the prontoscript guide and I downloaded the RS232 guide from Meridian which is for the 861 but I'm assuming the basic commands work with the G series as well. The M guide says if you want to poll the status of a menu item you use the command string: APnnT where nn is the hex value of that menu.

Let's say I want to see at what volume the processor is set. What would be the code? The M guide I have does not seem to give a hex code for volume. I suppose that is not considered a menu item? thx
[ Reply | Quote & Reply
Post 35 made on Monday January 12, 2009 at 19:44
...it's new!
Founding Member
Joined:November 2001
Posts:19
View Profile
Your G68 will echo back a full string of "CD Trifield 65" for example. This will happen when you send a command such as VP etc.

Actually tenchi has designed the interface so you only need to enter one line of code. There is underlying code that does all the work. It's not too difficult to send code however the trick is receiving the feedback and having it available globally so you can send the codes and receive feedback from all your device pages. Tenchi has all of this working very well now.

You should download the G68 RS232 guide as there are some slight differences between the 861 and the G68. The basic codes like volume, mute and source are the same though.

I hope to post a review of the Meridian interface in the next day or two.

Keith

This message was edited by Keith B on Monday January 12, 2009 at 19:51.
[ Reply | Quote & Reply
Now viewing thread page 2 of 2.
[ Go to: |1|2 ]
Search this thread:



Protected Feature Before you can reply to a message...
You must first register for a Remote Central user account - it's fast and free! Or, if you already have an account, please login now.

Jump to

Please read the following: Unsolicited commercial advertisements are absolutely not permitted on this forum. Other private buy & sell messages should be posted to our Marketplace. For information on how to advertise your service or product click here. Remote Central reserves the right to remove or modify any post that is deemed inappropriate.