<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Plugwise protocol unleashed part 1: introduction</title>
	<atom:link href="http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/</link>
	<description>Blogging on various IT subjects</description>
	<lastBuildDate>Mon, 26 Dec 2011 09:18:56 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Adrian</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-3451</link>
		<dc:creator>Adrian</dc:creator>
		<pubDate>Sun, 13 Nov 2011 12:38:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-3451</guid>
		<description>Hello, can anyone help me please.

I am trying to write a program in Java for comunicating with the Plugwise Circle.

I wrote a simple program which opens the port and writes to its OutputStream. I tried the following:

   byte[] text = {0x05, 0x05, 0x03, 0x03, 0x30, 0x30, 0x30, 0x41, 0x42, 0x34, 0x33, 0x43, 0x0D, 0x0A};
   output.write(text);

but it doesn&#039;t work. I receive nothing. I have tried the RealTerm software with which I can send data (ASCII) to the serial port.
When I send this string:
 
   \x05\x05\x03\x03\x30\x30\x30\x41\x42\x34\x33\x43\x0D\x0A

I get back the same string i captured with portmon software.
So i thought the java code I wrote might be wrong, the way I am trying to send &quot;Hexadecimal&quot; data.
Can anyone help me please...</description>
		<content:encoded><![CDATA[<p>Hello, can anyone help me please.</p>
<p>I am trying to write a program in Java for comunicating with the Plugwise Circle.</p>
<p>I wrote a simple program which opens the port and writes to its OutputStream. I tried the following:</p>
<p>   byte[] text = {0&#215;05, 0&#215;05, 0&#215;03, 0&#215;03, 0&#215;30, 0&#215;30, 0&#215;30, 0&#215;41, 0&#215;42, 0&#215;34, 0&#215;33, 0&#215;43, 0x0D, 0x0A};<br />
   output.write(text);</p>
<p>but it doesn&#8217;t work. I receive nothing. I have tried the RealTerm software with which I can send data (ASCII) to the serial port.<br />
When I send this string:</p>
<p>   \x05\x05\x03\x03\x30\x30\x30\x41\x42\x34\x33\x43\x0D\x0A</p>
<p>I get back the same string i captured with portmon software.<br />
So i thought the java code I wrote might be wrong, the way I am trying to send &#8220;Hexadecimal&#8221; data.<br />
Can anyone help me please&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adrian</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-3448</link>
		<dc:creator>Adrian</dc:creator>
		<pubDate>Sat, 12 Nov 2011 13:26:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-3448</guid>
		<description>Hello everyone.

That&#039;s a really awesome work everybody has done. I currently got a Circle+/Circle Home Start from Plugwise for my master thesis research and I wanted to write a program in Java for retrieving power consumption from the Circle. I&#039;ve read almost all the articles but I can&#039;t understand how should I send the msg to the serial port. Here is a simple code I use:

serialPort = (SerialPort) portId.open(this.getClass().getName(), TIME_OUT);
serialPort.setSerialPortParams(DATA_RATE, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);
// Open the Streams
input = serialPort.getInputStream();
output = serialPort.getOutputStream();
// Add event Listeners
serialPort.addEventListener(this);
serialPort.notifyOnDataAvailable(true);

String text = &quot;003E000D6F0000AF6414&quot;;
String crc16 = Checksum.getCRC16_String(text);
			
String packet = text + crc16;
			
byte[] sentPacket = HexBin.decode(packet);

output.write(sentPacket);

But I can&#039;t get any msg at all. I&#039;m not very used to serial programming.
For the CRC16 I used the code here http://domoticaforum.eu/viewtopic.php?f=39&amp;t=5803&amp;p=45093&amp;hilit=java+plugwise#p45093 (by Tiz).

I hope anyone can help me, thanks.</description>
		<content:encoded><![CDATA[<p>Hello everyone.</p>
<p>That&#8217;s a really awesome work everybody has done. I currently got a Circle+/Circle Home Start from Plugwise for my master thesis research and I wanted to write a program in Java for retrieving power consumption from the Circle. I&#8217;ve read almost all the articles but I can&#8217;t understand how should I send the msg to the serial port. Here is a simple code I use:</p>
<p>serialPort = (SerialPort) portId.open(this.getClass().getName(), TIME_OUT);<br />
serialPort.setSerialPortParams(DATA_RATE, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);<br />
// Open the Streams<br />
input = serialPort.getInputStream();<br />
output = serialPort.getOutputStream();<br />
// Add event Listeners<br />
serialPort.addEventListener(this);<br />
serialPort.notifyOnDataAvailable(true);</p>
<p>String text = &#8220;003E000D6F0000AF6414&#8243;;<br />
String crc16 = Checksum.getCRC16_String(text);</p>
<p>String packet = text + crc16;</p>
<p>byte[] sentPacket = HexBin.decode(packet);</p>
<p>output.write(sentPacket);</p>
<p>But I can&#8217;t get any msg at all. I&#8217;m not very used to serial programming.<br />
For the CRC16 I used the code here <a href="http://domoticaforum.eu/viewtopic.php?f=39&#038;t=5803&#038;p=45093&#038;hilit=java+plugwise#p45093" rel="nofollow">http://domoticaforum.eu/viewtopic.php?f=39&#038;t=5803&#038;p=45093&#038;hilit=java+plugwise#p45093</a> (by Tiz).</p>
<p>I hope anyone can help me, thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sander</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-3035</link>
		<dc:creator>Sander</dc:creator>
		<pubDate>Sat, 12 Feb 2011 00:22:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-3035</guid>
		<description>Does it only sends timestamps to each one of the nodes in the network just to see if they are alive?</description>
		<content:encoded><![CDATA[<p>Does it only sends timestamps to each one of the nodes in the network just to see if they are alive?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sander</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-3034</link>
		<dc:creator>Sander</dc:creator>
		<pubDate>Sat, 12 Feb 2011 00:19:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-3034</guid>
		<description>Hi guys, im currently working on a paper where i refer to Plugwise more than often and im trying to get around as to how each component works. I have a basic home 5 package with a stick a circle+ and 4 normal circle modules.

What i basically want to know is exactly how the data gets transferred between the stick and the modules. You seem to have explained just that but in a way that i cant exactly figure out some stuff since im not an expert in the field.

What i want to know is why the Circle+ is the one that sends the data to the stick and if any of the regular circle modules can send data too and the Circle+ is only there because it has a battery and 6-9 hours of clock operating time without power supply whereas the normal ones dont.

Thanks in advance and thanks for posting this</description>
		<content:encoded><![CDATA[<p>Hi guys, im currently working on a paper where i refer to Plugwise more than often and im trying to get around as to how each component works. I have a basic home 5 package with a stick a circle+ and 4 normal circle modules.</p>
<p>What i basically want to know is exactly how the data gets transferred between the stick and the modules. You seem to have explained just that but in a way that i cant exactly figure out some stuff since im not an expert in the field.</p>
<p>What i want to know is why the Circle+ is the one that sends the data to the stick and if any of the regular circle modules can send data too and the Circle+ is only there because it has a battery and 6-9 hours of clock operating time without power supply whereas the normal ones dont.</p>
<p>Thanks in advance and thanks for posting this</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mathijs</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-2795</link>
		<dc:creator>Mathijs</dc:creator>
		<pubDate>Thu, 16 Dec 2010 07:07:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-2795</guid>
		<description>Ok, I have made a hugh mistake that took too many hours of troubleshooting. So I thought I would share this in case anyone else encounters the same problem. (Although probably it is due to my lack of software background / experience)
I programmed my method and as a test I calculated the checksum for 000A because I knew this had to be B43C. However, I thought 000A was a HEX value already (&quot;A&quot; being the value 10). In fact, 000A is a String that has to be converted to bytes before you can calculate the checksum. After it was found, I easily corrected of course.

Most of you might be loughing out loud and I am happy to have amused you :-). For the others: I hope I prevented unnecesary troubleshooting.</description>
		<content:encoded><![CDATA[<p>Ok, I have made a hugh mistake that took too many hours of troubleshooting. So I thought I would share this in case anyone else encounters the same problem. (Although probably it is due to my lack of software background / experience)<br />
I programmed my method and as a test I calculated the checksum for 000A because I knew this had to be B43C. However, I thought 000A was a HEX value already (&#8220;A&#8221; being the value 10). In fact, 000A is a String that has to be converted to bytes before you can calculate the checksum. After it was found, I easily corrected of course.</p>
<p>Most of you might be loughing out loud and I am happy to have amused you :-). For the others: I hope I prevented unnecesary troubleshooting.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mathijs</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-2790</link>
		<dc:creator>Mathijs</dc:creator>
		<pubDate>Mon, 13 Dec 2010 22:43:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-2790</guid>
		<description>That was my typo. I meant I thought crc16 needed a 2 byte polynom. So I do not get 0x11021</description>
		<content:encoded><![CDATA[<p>That was my typo. I meant I thought crc16 needed a 2 byte polynom. So I do not get 0&#215;11021</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mathijs</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-2788</link>
		<dc:creator>Mathijs</dc:creator>
		<pubDate>Mon, 13 Dec 2010 22:32:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-2788</guid>
		<description>I am trying to make a crc16 calculation in java but this is kinda new for me. Right now I do not get how a polynominal could have 5 bytes (11021 as you suggest) is this a typo or do you know of some backgroundreading I can do to understand more of checksums?
Btw, I really like whst you have done so far.</description>
		<content:encoded><![CDATA[<p>I am trying to make a crc16 calculation in java but this is kinda new for me. Right now I do not get how a polynominal could have 5 bytes (11021 as you suggest) is this a typo or do you know of some backgroundreading I can do to understand more of checksums?<br />
Btw, I really like whst you have done so far.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Weird characters after device read</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-303</link>
		<dc:creator>Weird characters after device read</dc:creator>
		<pubDate>Fri, 28 May 2010 14:53:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-303</guid>
		<description>[...] it should return something like this:  Plugwise protocol unleashed part 1: introduction &#124; Maartendamen&#039;s blog  So the data has &quot;rn&quot; as terminator. If I convert all characters to int one by one I [...]</description>
		<content:encoded><![CDATA[<p>[...] it should return something like this:  Plugwise protocol unleashed part 1: introduction | Maartendamen&#39;s blog  So the data has &quot;rn&quot; as terminator. If I convert all characters to int one by one I [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Maarten</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-71</link>
		<dc:creator>Maarten</dc:creator>
		<pubDate>Mon, 25 Jan 2010 08:40:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-71</guid>
		<description>Thanks for your feedback.
Version 2 has really accurate readings.. it even reads below 1 watt.</description>
		<content:encoded><![CDATA[<p>Thanks for your feedback.<br />
Version 2 has really accurate readings.. it even reads below 1 watt.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Floppe</title>
		<link>http://www.maartendamen.com/2010/01/plugwise-protocol-unleashed-part-1-introduction/comment-page-1/#comment-70</link>
		<dc:creator>Floppe</dc:creator>
		<pubDate>Mon, 25 Jan 2010 07:24:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.maartendamen.com/?p=89#comment-70</guid>
		<description>Nice work! 

I&#039;ve used your protocol descriptions for the old plugs to write my own software in C that logs data to MySQL every 5 minutes. And I really like it and are hoping that version 2 will bring more accuracy to low power measures. I&#039;m really looking forward for the next parts to come on this BLOG.

Thank you for the hard work.</description>
		<content:encoded><![CDATA[<p>Nice work! </p>
<p>I&#8217;ve used your protocol descriptions for the old plugs to write my own software in C that logs data to MySQL every 5 minutes. And I really like it and are hoping that version 2 will bring more accuracy to low power measures. I&#8217;m really looking forward for the next parts to come on this BLOG.</p>
<p>Thank you for the hard work.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

