current scripts

Forum about hardware/software for the Philips Pronto TSU9600 and other remotes.

Moderator: hvxl

nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

current scripts

Post by nawikre »

I have been reading so much about the pronto tsu9600, but everything is out dated and links are not working anymore...very frustrating.

The camera files, other examples etc....so i cannot get info from here...i have to look at remotecentral, because there they still work on the tsu9600....

a shame..but thhis is how it is....

Iwan
greetz,

Iwan
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: current scripts

Post by Digit »

http://files.domoticaforum.eu/index.php?cam=/Pronto

I can send you my project if you like.
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

Yesterday evening i found this directory.....and wanted to updte my pronto, because the software version was 1.xxx while the newest version is 7.xx. But when i pressed downoad in PEP2 after that it said something like 'no valid configuration file found' So i thought well lets update.....
Update has 3 stages, after stage 2 ' uploading firmware to pronto' it gives an error message....so i will try it again when i get back from work today on a real computer because i did it of my old windows xp laptop...not the most stable and new one...

And i would gladly recieve your project....

do not know if you still have my ledreus email?

Thanks
greetz,

Iwan
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: current scripts

Post by Digit »

Yes, I still have that email address somewhere.
I'll send it later this day (evening).
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

thanks.......for now i am trying to upgrade the pronto to newest firmware on a stable system and busy with my new DIY Synology DS3612xs.
Already working like a charm, now installing all services and settings.... :|
greetz,

Iwan
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

Updated on a stable system and workes like a charm...Now lets play....
greetz,

Iwan
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

Thanks Robert for your configuration, i used your 'weather' part.

The only thing is that i can not get my ip camera's to work on the pronto. Tommorow is another day so i will try some other stuff.. I am using the same ip camera script/part as your are, where you only have to fill in the ip adress, room and the port number. When i start the simulator and open the script..thing it says something like connection error....

And one other question...how can i control stuff with this amazing remote that are behind cabinets??

(rewrote this story, because i wrote it in Duth..sorry
Last edited by nawikre on Sat Mar 15, 2014 11:11 pm, edited 1 time in total.
greetz,

Iwan
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: current scripts

Post by Digit »

How do you get an image from the camera without Pronto, what does the url look like?
Maybe the script has to be changed some more. Just let me know the url and I'll have a look.

Do you mean IR controlled AV equipment perhaps?
In that case I can probably help you.
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

normally when i use it in homeseer to trigger an event i use
http://192.168.1.xx:90/snapshot.cgi?use ... d=xxxxxxxx

and the videostream i think is
http://192.168.1.xx:90/videostream.cgi? ... wd=xxxxxxx

and yes i mean how can i control other AV equipment that work with IR behind closed doors.

thanks
greetz,

Iwan
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: current scripts

Post by Digit »

OK, both 'issues' should be easy to fix.

Problem is that I've got some other things to do tomorrow as well... like building a greenhouse:
2014-03-15 13.15.44s.jpg
2014-03-15 13.15.44s.jpg (40 KiB) Viewed 19380 times
So just be patient :wink:
User avatar
esschenk
Member
Member
Posts: 426
Joined: Sun Feb 17, 2008 10:34 pm
Location: Netherlands
Contact:

Re: current scripts

Post by esschenk »

I feel that there is something to do with Domotica in the greenhouse.
:D
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

No problem Robert,

i am also never sitting around doing nothing......i also have a million other projects. I will try some other options today.
About domotica in the greenhouse....i think that Ed can assist in putting loads of arduino's with temperture, humidity sensors etc. in them...and i can provide.....special Led growing lights :D :wink:
greetz,

Iwan
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: current scripts

Post by Digit »

Tadaa... 8)
DSC_9020.png
DSC_9020.png (134.42 KiB) Viewed 19304 times
I'll start a 'Greenhouse Automation' topic soon to hopefully get some inspiring input, cause I'm not the one with the 'green fingers' over here :lol:
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

I'ts looking like a real geenhouse.....My girlfriend and me both do not have green fingers, so no option for us.

Great job.....and looking foward to that automation as wel......can be done by one or 2 remote arduino's with a shit load of sensors. (temperture, humidity, watering system, lights..really everything)
greetz,

Iwan
nawikre
Member
Member
Posts: 192
Joined: Wed Jan 27, 2010 10:53 pm
Location: Eibergen
Contact:

Re: current scripts

Post by nawikre »

Still busy getting the ip camera on the TSU9600.

Have tried two different ip camera scripts now. Also in the file you have sent me Robert, but your script is NOT usable because i cannot enter a password and username anywhere...(not in settings or script..or i do not know how to)

I am now using a script called BABYCAM
and can view up to 4 camera's. In the settings menu it says this,



General IP Cam Module.

Simple still image grabber for 4 cameras

For each camera just enter:
- IP
- Username
- Password
- Still image address for your camera
(part after IP address in URL)

The cam pics can be resized to any size.
Portnumber is 80 by default, check if this is applicable for your cam.

after entering details saving and starting the simulation....it keeps telling me:
Opening Connection 1
error: PanelError: Failed to connect
Re-Opening Socket 1
Opening Connection 2
error: PanelError: Failed to connect
Re-Opening Socket 2

Do i have to change this script by hand or does the settings emnu not doing it's job.??



here is the script of the ip camera part

Code: Select all

// Simple IP Camera Grabber
// version 0.2 - 27-01-2009
// Contact Roti on Remote Central Forum


// START OF CODE

// Variables from Setting Page

var Cam1IP = CF.widget( "CAM1_IP" , "SETTINGS" ).label;
var Cam1User = CF.widget( "CAM1_USERNAME" , "SETTINGS" ).label;
var Cam1Pass = CF.widget( "CAM1_PASSWORD" , "SETTINGS" ).label;
var Cam1Still = CF.widget( "CAM1_STILL" , "SETTINGS" ).label;
var Cam1Port = CF.widget( "CAM1_PORT" , "SETTINGS" ).label;
var RawString1 = Cam1User + ":" + Cam1Pass;

var Cam2IP = CF.widget( "CAM2_IP" , "SETTINGS" ).label;
var Cam2User = CF.widget( "CAM2_USERNAME" , "SETTINGS" ).label;
var Cam2Pass = CF.widget( "CAM2_PASSWORD" , "SETTINGS" ).label;
var Cam2Still = CF.widget( "CAM2_STILL" , "SETTINGS" ).label;
var Cam2Port = CF.widget( "CAM2_PORT" , "SETTINGS" ).label;
var RawString2 = Cam2User + ":" + Cam2Pass;

var Cam3IP = CF.widget( "CAM3_IP" , "SETTINGS" ).label;
var Cam3User = CF.widget( "CAM3_USERNAME" , "SETTINGS" ).label;
var Cam3Pass = CF.widget( "CAM3_PASSWORD" , "SETTINGS" ).label;
var Cam3Still = CF.widget( "CAM3_STILL" , "SETTINGS" ).label;
var Cam3Port = CF.widget( "CAM3_PORT" , "SETTINGS" ).label;
var RawString3 = Cam3User + ":" + Cam3Pass;

var Cam4IP = CF.widget( "CAM4_IP" , "SETTINGS" ).label;
var Cam4User = CF.widget( "CAM4_USERNAME" , "SETTINGS" ).label;
var Cam4Pass = CF.widget( "CAM4_PASSWORD" , "SETTINGS" ).label;
var Cam4Still = CF.widget( "CAM4_STILL" , "SETTINGS" ).label;
var Cam4Port = CF.widget( "CAM4_PORT" , "SETTINGS" ).label;
var RawString4 = Cam4User + ":" + Cam4Pass;


// Variables
var receivedData1 = "";
var receivedData2 = "";
var receivedData3 = "";
var receivedData4 = "";
socket1 = new TCPSocket(false);
socket2 = new TCPSocket(false);
socket3 = new TCPSocket(false);
socket4 = new TCPSocket(false);

var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var output = "";


// Function encode64
// Base 64 encode username & password for GET request
// Code borrowed from ajaxcore.org

function encode64(input)
{
	var output = "";
	var chr1, chr2, chr3;
	var enc1, enc2, enc3, enc4;
	var i = 0;

	do {
		chr1 = input.charCodeAt(i++);
		chr2 = input.charCodeAt(i++);
		chr3 = input.charCodeAt(i++);

		enc1 = chr1 >> 2;
		enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
		enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
		enc4 = chr3 & 63;

		if (isNaN(chr2))
			{
				enc3 = enc4 = 64;
			}
		else if (isNaN(chr3))
			{
				enc4 = 64;
			}

		output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4);
	} while (i < input.length);
	return output;
}

function Cam1()
{
	if (socket1.connected != true)
		{
			System.print( "Opening Connection 1");
			socket1 = new TCPSocket(false);
			socket1.onConnect = onConnect1;
			socket1.onData = onData1;
			socket1.onClose = onClose1;
			socket1.onIOError = onIOError1;
			socket1.connect( Cam1IP , Cam1Port , 3000);
			System.print( "Re-Opening Socket 1");
		}

}

function onConnect1()
{
//	System.print( "Requesting pic from server 1");
	socket1.write( "GET " + Cam1Still + " HTTP/1.1\r\nHost " + Cam1IP + "\r\n" + "Authorization: Basic " + String1 + "\r\n\r\n");
}

function onData1()
{
//	System.print( "receiving data on 1");
	receivedData1 = receivedData1 + socket1.read();
}

function onClose1()
{
	System.print( "Socket 1 Closed - display data" );
	var imageStartIndex1 = receivedData1.indexOf("\r\n\r\n");
	var bitmapData1 = receivedData1.substring(imageStartIndex1+4);
	var NewImage1 = new Image(bitmapData1);
	widget("cam_1").stretchImage = true;
	widget("cam_1").setImage(NewImage1);
	receivedData1 = "";
}

function onIOError1 (e1)
{
	System.print ( "error: " + e1 );
}


function Cam2()
{
	if (socket2.connected != true)
		{
			System.print( "Opening Connection 2");
			socket2 = new TCPSocket(false);
			socket2.onConnect = onConnect2;
			socket2.onData = onData2;
			socket2.onClose = onClose2;
			socket2.onIOError = onIOError2;
			socket2.connect( Cam2IP , Cam2Port , 3000);
			System.print( "Re-Opening Socket 2");
		}
}

function onConnect2()
{
//	System.print( "Requesting pic from server 2");
	socket2.write( "GET " + Cam2Still + " HTTP/1.1\r\nHost " + Cam2IP + "\r\n" + "Authorization: Basic " + String2 + "\r\n\r\n");
}

function onData2()
{
//	System.print( "receiving data on 2");
	receivedData2 = receivedData2 + socket2.read();
}

function onClose2()
{
	System.print( "Socket 2 Closed - display data" );
	var imageStartIndex2 = receivedData2.indexOf("\r\n\r\n");
	var bitmapData2 = receivedData2.substring(imageStartIndex2+4);
	var NewImage2 = new Image(bitmapData2);
	widget("cam_2").stretchImage = true;
	widget("cam_2").setImage(NewImage2);
	receivedData2 = "";
}

function onIOError2 (e2)
{
	System.print ( "error: " + e2 );
}


function Cam3()
{
	if (socket3.connected != true)
		{
			System.print( "Opening Connection 3");
			socket3 = new TCPSocket(false);
			socket3.onConnect = onConnect3;
			socket3.onData = onData3;
			socket3.onClose = onClose3;
			socket3.onIOError = onIOError3;
			socket3.connect( Cam3IP , Cam3Port , 3000);
			System.print( "Re-Opening Socket 3");
		}
}

function onConnect3()
{
//	System.print( "Requesting pic from server 3");
	socket3.write( "GET " + Cam3Still + " HTTP/1.1\r\nHost " + Cam3IP + "\r\n" + "Authorization: Basic " + String3 + "\r\n\r\n");
}

function onData3()
{
//	System.print( "receiving data on 3");
	receivedData3 = receivedData3 + socket3.read();
}

function onClose3()
{
	System.print( "Socket 3 Closed - display data" );
	var imageStartIndex3 = receivedData3.indexOf("\r\n\r\n");
	var bitmapData3 = receivedData3.substring(imageStartIndex3+4);
	var NewImage3 = new Image(bitmapData3);
	widget("cam_3").stretchImage = true;
	widget("cam_3").setImage(NewImage3);
	receivedData3 = "";
}

function onIOError3 (e3)
{
	System.print ( "error: " + e3 );
}

function Cam4()
{
	if (socket4.connected != true)
		{
			System.print( "Opening Connection 4");
			socket4 = new TCPSocket(false);
			socket4.onConnect = onConnect4;
			socket4.onData = onData4;
			socket4.onClose = onClose4;
			socket4.onIOError = onIOError4;
			socket4.connect( Cam4IP , Cam4Port , 3000);
			System.print( "Re-Opening Socket 4");
		}
}

function onConnect4()
{
//	System.print( "Requesting pic from server 4");
	socket4.write( "GET " + Cam4Still + " HTTP/1.1\r\nHost " + Cam4IP + "\r\n" + "Authorization: Basic " + String4 + "\r\n\r\n");
}

function onData4()
{
//	System.print( "receiving data on 4");
	receivedData4 = receivedData4 + socket4.read();
}

function onClose4()
{
	System.print( "Socket 4 Closed - display data" );
	var imageStartIndex4 = receivedData4.indexOf("\r\n\r\n");
	var bitmapData4 = receivedData4.substring(imageStartIndex4+4);
	var NewImage4 = new Image(bitmapData4);
	widget("cam_4").stretchImage = true;
	widget("cam_4").setImage(NewImage4);
	receivedData4 = "";
}

function onIOError4 (e4)
{
	System.print ( "error: " + e4 );
}


// START EXECUTION HERE


// Create Base64 Login-Password strings
var String1 = encode64(RawString1);
var String2 = encode64(RawString2);
var String3 = encode64(RawString3);
var String4 = encode64(RawString4);


// END OF CODE


Script creator:

Rohan vanden Driesen
Western Australia
rohan@rohansplace.com

Adaption 9400 to 9600/9800:
Altavox Peter Aspegren
greetz,

Iwan
Post Reply

Return to “Philips Pronto (TSU9600), IRtrans and other remotes”