<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-20562436</id><updated>2024-10-05T05:21:42.459+03:00</updated><category term="Programming"/><category term="Life Clicks"/><category term="C#"/><category term="Linux"/><category term="Mobile"/><category term="Humour"/><category term="Python"/><category term="ASP.NET"/><category term="Home Automation"/><category term="Hypocrisy"/><category term="Project jaNET"/><category term="Hardware"/><category term="Java ME"/><category term="MIDlet"/><category term="Mono"/><category term="Ubuntu"/><title type='text'>J@mBeL.net</title><subtitle type='html'>How do I do things.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-20562436.post-7094453989814825177</id><published>2014-12-05T11:37:00.000+02:00</published><updated>2014-12-05T11:37:26.707+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life Clicks"/><title type='text'>The Hackaday Prize: Quarterfinalists</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFLG3cE95XuHQa2YxXNPddMnIalMm0oXtZc-baALYATTNX_6ql4qyCWE5Do5BfVvydX8pMclFvPQIzM6gOXFlraxhyphenhyphenz397EzUBLAAWQlRlxR9utEDa0SJUYqrb4AgzZbT0FDwu/s1600/hackaday.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFLG3cE95XuHQa2YxXNPddMnIalMm0oXtZc-baALYATTNX_6ql4qyCWE5Do5BfVvydX8pMclFvPQIzM6gOXFlraxhyphenhyphenz397EzUBLAAWQlRlxR9utEDa0SJUYqrb4AgzZbT0FDwu/s1600/hackaday.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
I personally want to congratulate and express my respect to the &lt;a href=&quot;https://hackaday.io/project/1340-satnogs-global-network-of-ground-stations&quot; target=&quot;_blank&quot;&gt;Greek team of SatNOGS&lt;/a&gt; that won the &lt;a href=&quot;https://hackaday.io/list/2945-the-hackaday-prize-quarterfinalists&quot; target=&quot;_blank&quot;&gt;Hackaday contest&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Excellent work, keep it up! The fundamental ingredient of success: &lt;b&gt;&lt;u&gt;Collaboration&lt;/u&gt;&lt;/b&gt;.&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUgIyeITTGqD9IJGljh0T2fFOdWC99Z22ex6NSSSqKqGiyGOfz3jvgTMackwbaFY1otMsESLmOmlRRvn5_fYaWfHXMiI3XRpwv4w2GDAhnS4EHoLdw6gqkpduy06lqw2NMSORd/s1600/7657121401903408421.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUgIyeITTGqD9IJGljh0T2fFOdWC99Z22ex6NSSSqKqGiyGOfz3jvgTMackwbaFY1otMsESLmOmlRRvn5_fYaWfHXMiI3XRpwv4w2GDAhnS4EHoLdw6gqkpduy06lqw2NMSORd/s1600/7657121401903408421.jpg&quot; height=&quot;221&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span class=&quot;short_text&quot; id=&quot;result_box&quot; lang=&quot;en&quot;&gt;&lt;a href=&quot;http://jubitoblog.blogspot.gr/2014/10/special-thanks-to-hackaday-members.html&quot; target=&quot;_blank&quot;&gt;&lt;span class=&quot;&quot;&gt;T-shirt and sticker&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;hps&quot;&gt;is fair enough&lt;/span&gt; &lt;span class=&quot;hps&quot;&gt;for&lt;/span&gt; my &lt;span class=&quot;hps&quot;&gt;personal effort :)&lt;/span&gt;&lt;/span&gt;
&lt;!--&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv7iWj7GvdksAFzG615SLkcOFNhSN6DOXK08Vp9LmEWy2Yt2K3z5fQZKv-nMnV_ZU7zu4L25mFb5RD_CKI1ri_mC6kZspuvPOCFqrMIXYH38U7S8gMxmksQgBUaPJMHMvcyS2K/s1600/IMG_20141015_105832.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv7iWj7GvdksAFzG615SLkcOFNhSN6DOXK08Vp9LmEWy2Yt2K3z5fQZKv-nMnV_ZU7zu4L25mFb5RD_CKI1ri_mC6kZspuvPOCFqrMIXYH38U7S8gMxmksQgBUaPJMHMvcyS2K/s1600/IMG_20141015_105832.jpg&quot; height=&quot;311&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
--&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/7094453989814825177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/7094453989814825177' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/7094453989814825177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/7094453989814825177'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2014/12/the-hackaday-prize-quarterfinalists.html' title='The Hackaday Prize: Quarterfinalists'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFLG3cE95XuHQa2YxXNPddMnIalMm0oXtZc-baALYATTNX_6ql4qyCWE5Do5BfVvydX8pMclFvPQIzM6gOXFlraxhyphenhyphenz397EzUBLAAWQlRlxR9utEDa0SJUYqrb4AgzZbT0FDwu/s72-c/hackaday.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-1199014229584507423</id><published>2011-11-14T19:26:00.003+02:00</published><updated>2011-11-15T11:01:47.121+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humour"/><category scheme="http://www.blogger.com/atom/ns#" term="Hypocrisy"/><category scheme="http://www.blogger.com/atom/ns#" term="Mobile"/><title type='text'>Nokia&#39;s firmware changing bluetooth mac address</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;I own a Nokia &lt;a href=&quot;http://www.gsmarena.com/nokia_x6_16gb-3109.php&quot; target=&quot;_blank&quot;&gt;X6 16Gb&lt;/a&gt;, and the other day, software update remind me that a new version is ready for download.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKYyRjf3yNE7b8n-PQkA3BQpW88R3bOlfsdQ2PjSJxssaPqw6LkWFiulytetv2MmHmZP7rGlbYEEbwhi2A8z-V4TdmiPIJvCDQ7sqZA5TZKX4-R7i4Q6gcA-jIi_bp213elni4/s1600/bluetooth-3d-logo.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKYyRjf3yNE7b8n-PQkA3BQpW88R3bOlfsdQ2PjSJxssaPqw6LkWFiulytetv2MmHmZP7rGlbYEEbwhi2A8z-V4TdmiPIJvCDQ7sqZA5TZKX4-R7i4Q6gcA-jIi_bp213elni4/s200/bluetooth-3d-logo.jpg&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
I download and install it, and after that, I realise that bluetooth&#39;s mac address was changed!&lt;br /&gt;
&lt;br /&gt;
Weird but true. The version is 40.0.002, with date 12-10-2011.&lt;br /&gt;
Does anyone else has that experience?&lt;br /&gt;
&lt;br /&gt;
Nokia, why is that?&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/1199014229584507423/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/1199014229584507423' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/1199014229584507423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/1199014229584507423'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2011/11/i-own-nokia-x6-16gb-and-other-day.html' title='Nokia&#39;s firmware changing bluetooth mac address'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKYyRjf3yNE7b8n-PQkA3BQpW88R3bOlfsdQ2PjSJxssaPqw6LkWFiulytetv2MmHmZP7rGlbYEEbwhi2A8z-V4TdmiPIJvCDQ7sqZA5TZKX4-R7i4Q6gcA-jIi_bp213elni4/s72-c/bluetooth-3d-logo.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-3842629250410380975</id><published>2011-10-16T21:22:00.025+03:00</published><updated>2011-12-04T20:10:52.036+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hardware"/><category scheme="http://www.blogger.com/atom/ns#" term="Home Automation"/><category scheme="http://www.blogger.com/atom/ns#" term="Project jaNET"/><title type='text'>Introducing, the jReCo</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpFUGjis6oDYeG0AK0Zr31auX5YpFkepnlsO8WEsD6gEKKa6Ru9w6wi7KNbZTVGy0dmMlJh4nYAMGZbBjkz6o4X0WWFt6o-tCLF1T5Mvq30i8BlHfQcIPFPazdnWORZM8SbmHT/s1600/jReCo.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;158&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpFUGjis6oDYeG0AK0Zr31auX5YpFkepnlsO8WEsD6gEKKa6Ru9w6wi7KNbZTVGy0dmMlJh4nYAMGZbBjkz6o4X0WWFt6o-tCLF1T5Mvq30i8BlHfQcIPFPazdnWORZM8SbmHT/s320/jReCo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;After a lot of R&amp;amp;D and some user requests, I&#39;d like to present the jReCo! A wireless home control station.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt; jReCo Description:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
USB radio frequency transceiver that plugs into your computer and let  you control remotely multiple devices that operates at 433/315MHz such  as plug socket receivers.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;Applications:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
Turn on/off your lights, radios, routers, hubs, fans, etc from your computer. You can automate anything that runs on electricity and can plug into a remote socket receiver.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;&lt;a href=&quot;https://sites.google.com/site/projectjanet/&quot;&gt;jaNET&lt;/a&gt; Support:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Control almost any remote socket receiver&lt;/li&gt;
&lt;li&gt;Control from anywhere in the world&lt;/li&gt;
&lt;li&gt;Schedule your appliances&lt;/li&gt;
&lt;li&gt;Receive/Transmit signals&lt;/li&gt;
&lt;li&gt;Possible to develop your own application&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;u&gt;&lt;b&gt;Compatibility:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
jReCo is compatible with just about every remote control socket receiver in the market.&lt;br /&gt;
OS: Windows, Linux, Mac OS&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;Specifications:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Connection: USB &lt;/li&gt;
&lt;li&gt;Range: ~30m&lt;/li&gt;
&lt;li&gt;Power: 5V (USB powered)&lt;/li&gt;
&lt;li&gt;Frequency: 433MHz/315MHz (Depending your location)&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
Some images can be found &lt;a href=&quot;https://sites.google.com/site/projectjanet/image-gallery&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;here&lt;/b&gt;&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
If you&#39;re interested please visit &lt;a href=&quot;https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&amp;amp;business=KMK7WRGSTCBUL&amp;amp;lc=GR&amp;amp;item_name=jReCo%20%2d%20Wireless%20Home%20Control%20Station&amp;amp;amount=35%2e00&amp;amp;currency_code=EUR&amp;amp;button_subtype=services&amp;amp;shipping=7%2e00&amp;amp;bn=PP%2dBuyNowBF%3abtn_buynowCC_LG%2egif%3aNonHosted&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Product page&lt;/b&gt;&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/0UswzbJCMkE?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/3842629250410380975/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/3842629250410380975' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3842629250410380975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3842629250410380975'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2011/10/introducing-jreco.html' title='Introducing, the jReCo'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpFUGjis6oDYeG0AK0Zr31auX5YpFkepnlsO8WEsD6gEKKa6Ru9w6wi7KNbZTVGy0dmMlJh4nYAMGZbBjkz6o4X0WWFt6o-tCLF1T5Mvq30i8BlHfQcIPFPazdnWORZM8SbmHT/s72-c/jReCo.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-8142561741839884261</id><published>2010-09-04T15:27:00.003+03:00</published><updated>2010-09-05T14:27:14.306+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humour"/><category scheme="http://www.blogger.com/atom/ns#" term="Hypocrisy"/><title type='text'>Seriously?</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Once upon a time, I had subscribed to Microsoft Office Live to check it out. I didn&#39;t use it as a main tool since I found more convenient Google Docs. Anyway, I tried to login from my home computer which it runs Ubuntu 10.04 and Firefox. In my surprise I came up with this message...&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;blockquote&gt;To use Microsoft Office Live, your computer must meet one of the following requirements:&lt;br /&gt;
&lt;br /&gt;
* Microsoft Internet Explorer 6, 7, or 8 running on Microsoft Windows XP, Windows Server 2003, or Windows Vista. You can download Internet Explorer from the Internet Explorer page.&lt;br /&gt;
&lt;br /&gt;
* Mozilla Firefox running on Windows XP, Windows Server 2003, Windows Vista, or Mac OS X 10.2.x and later. You can download Firefox from the Firefox download page.&lt;/blockquote&gt;&lt;br /&gt;
&lt;a href=&quot;http://home.officelive.com/Misc/CompatibleShell.aspx?linkId=UnsupportedBrowser&quot; target=&quot;_blank&quot;&gt;Original page&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Come on Microsoft!</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/8142561741839884261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/8142561741839884261' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/8142561741839884261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/8142561741839884261'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2010/09/seriously.html' title='Seriously?'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-7620682253171661854</id><published>2010-06-05T16:48:00.038+03:00</published><updated>2012-04-04T11:45:23.344+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><category scheme="http://www.blogger.com/atom/ns#" term="Home Automation"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Mono"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Project jaNET"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><title type='text'>Iron man JARVIS meet jaNET</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEk7xXUPGRL4dJg_jUbKEd8DLJmBID72y631svxyVH-OR3O6oCDlg1raS9you8jrxta7oJaggUWd9l7J-qXjjnSTbYTVmGoY8LLsuXvVsv4kBzyRA-IyeQ7GuNa6fC7SOcH_xQ/s1600/jarvis.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;127&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEk7xXUPGRL4dJg_jUbKEd8DLJmBID72y631svxyVH-OR3O6oCDlg1raS9you8jrxta7oJaggUWd9l7J-qXjjnSTbYTVmGoY8LLsuXvVsv4kBzyRA-IyeQ7GuNa6fC7SOcH_xQ/s200/jarvis.jpg&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;code&gt;&lt;b&gt;Update&lt;/b&gt;: Project jaNET has a &lt;a href=&quot;http://sites.google.com/site/projectjanet&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;home&lt;/b&gt;&lt;/a&gt; and a &lt;a href=&quot;http://www.facebook.com/pages/Project-jaNET/115581091842605&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Facebook page&lt;/b&gt;&lt;/a&gt;&lt;/code&gt;Project jaNET provides a framework that allows various components to communicate, controlled interactively by the user. This procedure aim to act like a digital life assistant (DLA) which I inspired by Iron Man&#39;s JARVIS.&lt;br /&gt;
&lt;br /&gt;
Since I finished a digital photo frame (you can find some material &lt;a href=&quot;http://www.box.net/shared/9ut5tvav1n&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;) with a reflective dielectric glass in front acting like a mirror when its turned off, I thought... hmm, it&#39;s a hidden computer, why limited just to play photos and not do more things like, checking email, get weather, controlling my room lights maybe temperature, or any other sensor attached in future, and generally stuff could assist me in matters of information? Then JARVIS came as a guidance inspiration, and the project jaNET began!&lt;br /&gt;
&lt;br /&gt;
But no more talking, lets cut to the chase! I&#39;ll try to describe and explain some actions &quot;she&quot; can do at the present time and &quot;drop some specs&quot;.&lt;br /&gt;
&lt;br /&gt;
Let&#39;s take a look to the hardware used by the time. I use a &lt;a href=&quot;http://www.phidgets.com/products.php?product_id=1018&quot; target=&quot;_blank&quot;&gt;Phidgets 8/8/8 usb interface kit&lt;/a&gt;, a &lt;a href=&quot;http://www.phidgets.com/products.php?category=2&amp;amp;product_id=1128&quot; target=&quot;_blank&quot;&gt;MaxBotix EZ-1 Sonar Sensor&lt;/a&gt; and a &lt;a href=&quot;http://www.phidgets.com/products.php?product_id=3051&quot; target=&quot;_blank&quot;&gt;Dual Relay Board&lt;/a&gt;.&lt;br /&gt;
Relay board is responsible for the desk lights and the sonar to entrap my office area. Software written in java, is stand alone for each unit and called from jaNET when needed. &lt;b&gt;Update:&lt;/b&gt; I use also an arduino microcontroller and sensors to measure temperature, illumination and motion activity.&lt;br /&gt;
&lt;br /&gt;
Beyond hardware I built a framework providing some actions as described below.&lt;br /&gt;
Weather check, email check, knowing my gps position, controlling room lights, desk entrapment and alert when someone approach, listening bluetooth devices and react as the configuration &lt;a href=&quot;http://www.jambel.net/downloads/AppConfig.xml&quot; target=&quot;_blank&quot;&gt;XML&lt;/a&gt; file instructs, setting wake up calls, listening commands from anywhere by a custom web service or email, sending email alerts, sending sms alerts and sometimes talking too much :)&lt;br /&gt;
&lt;br /&gt;
I wanted to be cross platform but emphasized on linux. I decide to use Ubuntu, C# Mono and Festival Speech Synthesis. I also needed to be flexible in matters of user preferences so the framework and the parser designed so, that the end user configure it to his way. The default instruction set simplifies the actions he has to do! The concept achieved with an &lt;a href=&quot;http://www.jambel.net/downloads/AppConfig.xml&quot; target=&quot;_blank&quot;&gt;XML&lt;/a&gt; configuration file.&lt;br /&gt;
For instance, I have a built-in function, called &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;%mailcount%&lt;/span&gt;, which returns the number of incoming e-mails as an integer. Then I describe a new instruction set &quot;checkmail&quot; in the &lt;a href=&quot;http://www.jambel.net/downloads/AppConfig.xml&quot; target=&quot;_blank&quot;&gt;XML file&lt;/a&gt;, something like &quot;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;You have %mailcount% mail messages&lt;/span&gt;&quot;. So when I call this command, the parser interprets, trigger the function from the framework, get the value and finally announce it if e-mails fetched. I think it&#39;s very handy because you don&#39;t need to have programming skills to make it work for you!&lt;br /&gt;
&lt;br /&gt;
You can preview some videos on &lt;b&gt;&lt;a href=&quot;http://www.youtube.com/jambelnet&quot; target=&quot;_blank&quot;&gt;my youtube channel&lt;/a&gt;&lt;/b&gt; and more cool things is on the way!&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/7620682253171661854/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/7620682253171661854' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/7620682253171661854'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/7620682253171661854'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2010/06/janet-meet-jarvis.html' title='Iron man JARVIS meet jaNET'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEk7xXUPGRL4dJg_jUbKEd8DLJmBID72y631svxyVH-OR3O6oCDlg1raS9you8jrxta7oJaggUWd9l7J-qXjjnSTbYTVmGoY8LLsuXvVsv4kBzyRA-IyeQ7GuNa6fC7SOcH_xQ/s72-c/jarvis.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-3692593276605085917</id><published>2010-03-24T13:04:00.006+02:00</published><updated>2010-06-05T16:59:22.761+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humour"/><title type='text'>Samsung weather conditions</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Ad9cODTwcncsCjlk_4LGTxSaz0BmTlo3_ZqbAsY3UxaIyLHsgzUi484BRCoKx40JEcWHETo6cZ0TDBqzcw2o4ED4RvDZGt6X1J5Q6uxuZ6WI67oTUuVEfcrQ5EK2vPSOiAIG/s1600/samsung_mob.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Ad9cODTwcncsCjlk_4LGTxSaz0BmTlo3_ZqbAsY3UxaIyLHsgzUi484BRCoKx40JEcWHETo6cZ0TDBqzcw2o4ED4RvDZGt6X1J5Q6uxuZ6WI67oTUuVEfcrQ5EK2vPSOiAIG/s320/samsung_mob.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Is it possible to have 21 Celsius degree in Vegas with snow flurries?&lt;br /&gt;
&lt;br /&gt;
Samsung marketing department probably know something that we earthlings don&#39;t! :)&lt;br /&gt;
&lt;br /&gt;
This picture is from the official announcement of the new Samsung I9000 Galaxy S.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/3692593276605085917/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/3692593276605085917' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3692593276605085917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3692593276605085917'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2010/03/samsung-weather-conditions.html' title='Samsung weather conditions'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Ad9cODTwcncsCjlk_4LGTxSaz0BmTlo3_ZqbAsY3UxaIyLHsgzUi484BRCoKx40JEcWHETo6cZ0TDBqzcw2o4ED4RvDZGt6X1J5Q6uxuZ6WI67oTUuVEfcrQ5EK2vPSOiAIG/s72-c/samsung_mob.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-259548010700724396</id><published>2010-03-24T12:01:00.037+02:00</published><updated>2014-09-15T11:30:19.811+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET"/><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>ASP.NET (C#) Contact Form</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Probably the most common page at any kind of website is the contact form! There is a ton of examples on the internet but many of them are under payment, step by step generators, joomla extensions, php scripts which required donations etc etc and lots of things that frustrates the most simple but important way to get in touch or feedback a website owner.&lt;br /&gt;
&lt;br /&gt;
After that waste of time and the lack of an ASP.NET contact form I started to build my own and use it for my website and my (this) blog.&lt;br /&gt;
&lt;br /&gt;
.NET framework provides a class library simplifies the way we send e-mail and it packed under System.Net.Mail.&lt;br /&gt;
&lt;br /&gt;
I won&#39;t describe the process but I&#39;ll give you &lt;a href=&quot;http://jambelnet.blogspot.com/p/contact.html&quot;&gt;this&lt;/a&gt; form as example and the source code for &lt;a href=&quot;https://sourceforge.net/projects/aspnetcntctfrm/files/ContactForm.zip/download&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;download&lt;/b&gt;&lt;/a&gt;. It&#39;s very easy to manipulate, all you need is to build it and edit the settings in &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;WebAppConfig.xml&lt;/span&gt; file.&lt;br /&gt;
&lt;br /&gt;
Then you can add an iframe to a custom page and code it like this...&lt;br /&gt;
&lt;code&gt; &amp;lt;iframe src=&quot;http://www.jambel.net/_dev/contact/Default.aspx&quot; width=100% height=340px frameborder=0 allowtransparency=&quot;true&quot;&amp;gt;&amp;lt;/iframe&amp;gt; &lt;/code&gt;&lt;br /&gt;
the result should be look like this...&lt;br /&gt;
&lt;img border=&quot;0&quot; height=&quot;152&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw70e6xq714KcgHQxsdmC6D6B4FUfLzvylDgzGil-w3iMfj0aUUnjvzyLxUxg8e88ZhPhDhOkX5a9T5Vdw0kdKh3Vx3wWuuQFIXKSWCrj4hlOVyzrQLGCu-FYdmcntWMZ9-deaIA/s325/contact_form.jpg&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/259548010700724396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/259548010700724396' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/259548010700724396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/259548010700724396'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2010/03/aspnet-c-contact-form.html' title='ASP.NET (C#) Contact Form'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw70e6xq714KcgHQxsdmC6D6B4FUfLzvylDgzGil-w3iMfj0aUUnjvzyLxUxg8e88ZhPhDhOkX5a9T5Vdw0kdKh3Vx3wWuuQFIXKSWCrj4hlOVyzrQLGCu-FYdmcntWMZ9-deaIA/s72-c/contact_form.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-32875648611726872</id><published>2009-09-01T13:57:00.044+03:00</published><updated>2010-06-26T17:15:05.312+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Python"/><title type='text'>Change between workspaces using HP 2140 accelerometer</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;HP mini 2140 netbook comes with an ST Microeletronics accelerometer and under linux kernel 2.6.27 we found a driver that supports it (LIS3LV02Dx).&lt;br /&gt;
With wmctrl and some scripting we can toggle between workspaces when we tilt the machine left or right. This is a useless script but it has some fun :)&lt;/div&gt;&lt;br /&gt;
First you need to install &lt;a href=&quot;http://tripie.sweb.cz/utils/wmctrl/&quot; target=&quot;_blank&quot;&gt;wmctrl&lt;/a&gt;&lt;br /&gt;
&lt;code&gt;sudo apt-get install wmctrl&lt;/code&gt;&lt;i&gt;bash shell script&lt;/i&gt; - &lt;a href=&quot;https://sourceforge.net/projects/hp2140axis/files/chwrkspc_sh.zip/download&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Download&lt;/b&gt;&lt;/a&gt;&lt;code&gt;#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
COUNTER=0&lt;br /&gt;
&lt;br /&gt;
while [ $COUNTER -le 100 ]; do&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; sleep 0.5&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; POS=`cat /sys/devices/platform/lis3lv02d/position | awk -F &quot;(&quot; &#39;{print$2}&#39; | awk -F , &#39;{print$1}&#39;`&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; echo $POS&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if [ $POS -ge 12 ]; then&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; wmctrl -o 1024,0&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; elif [ $POS -le -12 ]; then&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; wmctrl -o 0,0&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fi&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; COUNTER=$(( $COUNTER + 1 ))&lt;br /&gt;
done&lt;/code&gt;&lt;b&gt;UPDATE&lt;/b&gt; Sep 8, 2009: &lt;i&gt;an approach in python&lt;/i&gt; - &lt;a href=&quot;https://sourceforge.net/projects/hp2140axis/files/chwrkspc_py.zip/download&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Download&lt;/b&gt;&lt;/a&gt;&lt;code&gt;#!/usr/bin/python&lt;br /&gt;
import time&lt;br /&gt;
import os&lt;br /&gt;
cnt=0 &lt;br /&gt;
while cnt &amp;lt;= 100: &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; time.sleep(0.5) &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; f = open (&#39;/sys/devices/platform/lis3lv02d/position&#39;,&#39;r&#39;) &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; data = f.read() &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ar = data.split(&#39;,&#39;) &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; results = ar[0].replace(&#39;(&#39;,&#39;&#39;), ar[1], ar[2].replace(&#39;)&#39;,&#39;&#39;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; print results &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ar[0].replace(&#39;(&#39;,&#39;&#39;) &amp;gt;= &#39;12&#39;): &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; os.system(&#39;wmctrl -o 1024,0&#39;) &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif (ar[1] &amp;lt;= &#39;-12&#39;): &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; os.system(&#39;wmctrl -o 0,0&#39;) &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; f.close() &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; cnt += 1&lt;/code&gt;&lt;b&gt;Note:&lt;/b&gt; Scripts will work when System/Preferences/Appearance/Visual Effects is set to Normal or Extra.&lt;br /&gt;
&lt;object height=&quot;344&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/2NzmEkwynmo&amp;hl=en&amp;fs=1&amp;&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/2NzmEkwynmo&amp;hl=en&amp;fs=1&amp;&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/32875648611726872/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/32875648611726872' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/32875648611726872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/32875648611726872'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/09/change-between-workspaces-using-hp-2140.html' title='Change between workspaces using HP 2140 accelerometer'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-2355749989723936353</id><published>2009-08-31T11:29:00.025+03:00</published><updated>2010-03-11T10:50:33.003+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Show and hide gnome panels using gconftool-2</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;I own an HP mini 2140 netbook and as you might know the 1024x576 resolution is a little bit annoying. In order to gain some space I removed the bottom panel and decide to hide the top. I really don&#39;t like the autohide method and I needed something to do it manually. Then I open gconf-editor to figure out the settings that gnome using to apply these methods. When I found them I created 2 new custom keyboard shortcuts and wrote the followings: &lt;/div&gt;&lt;br /&gt;
Hide Top Panel&lt;br /&gt;
&lt;code&gt;gconftool-2 --set &quot;/apps/panel/toplevels/top_panel_screen0/auto_hide&quot; --type boolean &quot;true&quot;&lt;/code&gt;&lt;br /&gt;
Show Top Panel&lt;br /&gt;
&lt;code&gt;gconftool-2 --set &quot;/apps/panel/toplevels/top_panel_screen0/auto_hide&quot; --type boolean &quot;false&quot;&lt;/code&gt;&lt;br /&gt;
By default the size of the hidden panel is 6 so to gain even those 6 pixels make sure you run this first to resize it to 0.&lt;br /&gt;
&lt;code&gt;gconftool-2 --set &quot;/apps/panel/toplevels/top_panel_screen0/auto_hide_size&quot; --type integer 0&lt;/code&gt;&lt;br /&gt;
Under Ubuntu everything works great!</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/2355749989723936353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/2355749989723936353' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/2355749989723936353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/2355749989723936353'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/08/showhide-gnome-panels-using-gconftool-2.html' title='Show and hide gnome panels using gconftool-2'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-70422809812561528</id><published>2009-08-14T12:26:00.014+03:00</published><updated>2011-11-14T14:49:04.910+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life Clicks"/><title type='text'>Oakley Minute 2.0</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj692mjclW52eydpRuLFqovHcbjEru0HnGExgYPCnUOfG3M9ChO53AJCnEUlRQCdjhNxHgcJ8EOJS0EmLA7Hf_jcyWqPKU4zqw6zbDX13aOnpIFj7EvrRblPfVhyphenhyphenPhi-PYeWDcgoA/s267/oakley_minute.jpg&quot; style=&quot;float: right; height: 213px; margin: 0pt 0pt 10px 10px; width: 150px;&quot; /&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;My favorite sunglasses firm is &lt;a href=&quot;http://oakley.com/&quot;&gt;Oakley&lt;/a&gt; by far! After 9+ glorious years with &lt;a href=&quot;http://www.celebrity-sunglasses-finder.com/image-files/oakley_minute_black.jpg&quot;&gt;Oakley Minute&lt;/a&gt; I step forward to the next generation &lt;a href=&quot;http://www.usshootingacademy.com/onlineProducts/123456789.jpg&quot;&gt;Oakley Minute 2.0 &lt;/a&gt;Polarized this time! What can I say, sunglasses rocks and they&#39;re definitely deserve the term HDO (High Definition Optics).&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/70422809812561528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/70422809812561528' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/70422809812561528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/70422809812561528'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/08/oakley-minute-20.html' title='Oakley Minute 2.0'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj692mjclW52eydpRuLFqovHcbjEru0HnGExgYPCnUOfG3M9ChO53AJCnEUlRQCdjhNxHgcJ8EOJS0EmLA7Hf_jcyWqPKU4zqw6zbDX13aOnpIFj7EvrRblPfVhyphenhyphenPhi-PYeWDcgoA/s72-c/oakley_minute.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-4155838031896229138</id><published>2009-08-12T20:33:00.050+03:00</published><updated>2010-03-11T10:55:57.089+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Ubuntu 9.04 (Jaunty Jackalope) with 2.6.30.4 Kernel on HP 2140</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Recently I bought an &lt;span style=&quot;font-weight: bold;&quot;&gt;HP mini 2140&lt;/span&gt; netbook and decided to install Ubuntu on it. As I browsing around for known issues on this machine I get into that with default 2.6.28.14 Kernel the Dual Core option from BIOS wouldn&#39;t work and installation crashed. After some readings I found that the latest Kernel  (currently 2.6.30.4) fixed the problem so I proceed installation with Dual Core option disabled.&lt;br /&gt;
&lt;br /&gt;
After that everything works like charm except wifi. I look around again in Ubuntu forums, blogs etc and come with this solution from &lt;a href=&quot;http://jhabib.lebos.org/?p=3&quot; target=&quot;_blank&quot;&gt;Jocelyn&#39;s Blog&lt;/a&gt;. Let&#39;s see it step by step:&lt;br /&gt;
&lt;br /&gt;
- &lt;a href=&quot;http://kernel.org/&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Download&lt;/a&gt; and &lt;a href=&quot;http://easylinuxcds.com/blog/?p=3244&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;compile latest Kernel&lt;/a&gt;, or use my ready made &lt;a href=&quot;http://jambel.net/downloads/linux/linux-2_6_30_4.tar.gz&quot; style=&quot;font-weight: bold;&quot;&gt;2.6.30.4&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://jambel.net/downloads/linux/linux-headers-2.6.30.4-_2.6.30.4--10.00.Custom_i386&quot;&gt;&lt;/a&gt;&lt;br /&gt;
to install these files just run &lt;span style=&quot;font-family: courier new;&quot;&gt;dpkg -i packagename.deb&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;- preparing the installation of STA Broadcom drivers&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo apt-get install module-assistant&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo module-assistant prepare&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;- download the Broadcom STA driver from&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://launchpad.net/debian/sid/+source/broadcom-sta/5.10.91.9-1&quot; target=&quot;_blank&quot;&gt;https://launchpad.net/debian/sid/+source/broadcom-sta/5.10.91.9-1&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;- the 32-bit driver:&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://launchpad.net/debian/sid/+source/broadcom-sta/5.10.91.9-1/+files/broadcom-sta_5.10.91.9.orig.tar.gz&quot;&gt;https://launchpad.net/debian/sid/+source/broadcom-sta/5.10.91.9-1/+files/broadcom-sta_5.10.91.9.orig.tar.gz&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;- download also debian patches for this STA drivers version from:&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;http://patch-tracking.debian.net/package/broadcom-sta&quot; target=&quot;_blank&quot;&gt;http://patch-tracking.debian.net/package/broadcom-sta&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;mkdir wifi;cd wifi&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;# download all needed files&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;wget http://patch-tracking.debian.net/patch/series/dl/broadcom-sta/5.10.91.9-1/01-hidden-essid.patch&lt;br /&gt;
wget http://patch-tracking.debian.net/patch/series/dl/broadcom-sta/5.10.91.9-1/02-license.patch&lt;br /&gt;
wget http://patch-tracking.debian.net/patch/series/dl/broadcom-sta/5.10.91.9-1/03-2.6.29.patch&lt;br /&gt;
wget http://patch-tracking.debian.net/patch/series/dl/broadcom-sta/5.10.91.9-1/04-2.6.30.patch&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;mkdir hybrid;cd hybrid&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;# unpack the driver&lt;/span&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;&lt;br /&gt;
tar zxf ../broadcom-sta_5.10.91.9.orig.tar.gz&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;cd broadcom-sta/&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;# patch the driver&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;patch -p1 &amp;lt; ../../01-hidden-essid.patch patch -p1 &amp;lt; ../../02-license.patch patch -p1 &amp;lt; ../../03-2.6.29.patch patch -p1 &amp;lt; ../../04-2.6.30.patch cd i386/&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;# make the module&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;make -C /lib/modules/`uname -r`/build M=`pwd`&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;# copy it to modules location and load the module&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo cp wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo depmod -a&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo modprobe wl&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;- in order to make sure the wl module is loaded after the reboot I’ve added &lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;wl&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt; to /etc/modules&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo echo wl &amp;gt;&amp;gt; /etc/modules&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Everything went well but wifi remained unavailable. I tried &lt;span style=&quot;color: #009900;&quot;&gt;lspci -v&lt;/span&gt; and realize that Kernel driver was in use wasn&#39;t the &lt;span style=&quot;font-weight: bold;&quot;&gt;wl&lt;/span&gt; but &lt;span style=&quot;font-weight: bold;&quot;&gt;ssb&lt;/span&gt; (&lt;span style=&quot;font-weight: bold;&quot;&gt;b43-pci-bridge&lt;/span&gt;). Then I read about &lt;a href=&quot;http://wiki.debian.org/KernelModuleBlacklisting&quot; target=&quot;_blank&quot;&gt;KernelModuleBlacklisting&lt;/a&gt; from Debian Wiki and come up with the following solution:&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo echo blacklist b43 &amp;gt;&amp;gt; /etc/modprobe.d/b43.conf&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo echo blacklist ssb &amp;gt;&amp;gt; /etc/modprobe.d/ssb.conf&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo modprobe -r b43&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo modprobe -r ssb&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt; sudo modprobe -r wl&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt; sudo modprobe wl&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo depmod -ae&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-weight: bold;&quot;&gt;- recreate initrd&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt; and restart Network Manager&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier new;&quot;&gt; update-initramfs -u&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: courier new;&quot;&gt;sudo service NetworkManager restart&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;and voila! wifi worked perfectly at last!&lt;br /&gt;
This tutorial will probably work for all devices using Broadcom BCM4322.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/4155838031896229138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/4155838031896229138' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/4155838031896229138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/4155838031896229138'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/08/ubuntu-904-jaunty-jackalope-with-26304.html' title='Ubuntu 9.04 (Jaunty Jackalope) with 2.6.30.4 Kernel on HP 2140'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-883656885058106459</id><published>2009-08-11T00:27:00.009+03:00</published><updated>2018-09-13T17:10:24.300+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life Clicks"/><title type='text'>Got lucky with Kawasaki</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Past Sunday (9 Aug 2009) a friend of mine went on vacations and left me his motorcycle a Kawasaki ZX-10 &#39;07, so we arrange with another friend go for a ride and check it out. I was very exited because mine was out for service (Yamaha R1) and I had the opportunity to check out the ZX-10 and the GSX-R of other friend.&lt;br /&gt;
&lt;br /&gt;
We went to &lt;a href=&quot;http://maps.google.com/maps?f=q&amp;amp;source=s_q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=greece+arachova&amp;amp;sll=37.0625,-95.677068&amp;amp;sspn=51.887315,114.169922&amp;amp;ie=UTF8&amp;amp;ll=38.480487,22.585788&amp;amp;spn=0.012649,0.027874&amp;amp;t=h&amp;amp;z=16&quot; target=&quot;_blank&quot;&gt;Arachova&lt;/a&gt; and everything was great til returning. When we left mountains and lots of turns we rich the highway and decide in some part of the road to open the throttle a little bit, so we accelerate and at around 230km/h I realize that something was wrong with the back side and start decelerating but in 200km/h the bike started to &quot;dance&quot;! I tried not to panic and be as calm as I could to make very precise handlings in result to stop it.&lt;br /&gt;
&lt;br /&gt;
Fortunately everything ended well and I&#39;m just fine!&lt;br /&gt;
&lt;br /&gt;
The mechanic told us that he found a piece of metal stuck in the tire and in combination with roads high temp it cause the tire to &quot;burn&quot;.&lt;br /&gt;
&lt;br /&gt;
Incident in pictures...&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB4u9vmGwfxs82C2jXcia4M7UnaACq5iaPt1Hzk1smzKxlS0BQ5HLc2QC3MCLVhrg71RRf9X84mYhCosU_qwBzw-d0drNonFd9EFpf1orlqkdkB1MfPt-mI-2bcvgS6bVeTBMp/s1600/090820091289.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1200&quot; data-original-width=&quot;1600&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB4u9vmGwfxs82C2jXcia4M7UnaACq5iaPt1Hzk1smzKxlS0BQ5HLc2QC3MCLVhrg71RRf9X84mYhCosU_qwBzw-d0drNonFd9EFpf1orlqkdkB1MfPt-mI-2bcvgS6bVeTBMp/s320/090820091289.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGUtJr8HwHoefBcSC_oqnlANXuahNoSV_ZAoLHpQMfgUUBwF_XHaiN8eXyNDkPmD3pY2MHuqga11nLPowA2gEcvVBm_H0GYoeNRMAr3ok0d7unroKFrnTVgi1K1ihNNF3ocwh-/s1600/090820091290.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1200&quot; data-original-width=&quot;1600&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGUtJr8HwHoefBcSC_oqnlANXuahNoSV_ZAoLHpQMfgUUBwF_XHaiN8eXyNDkPmD3pY2MHuqga11nLPowA2gEcvVBm_H0GYoeNRMAr3ok0d7unroKFrnTVgi1K1ihNNF3ocwh-/s320/090820091290.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4slM3ZvFSq0GGOGD1YVVHQS5dx_DeYl4JqRqyOwq9Reo0RSbAlktNDIuTxR7UBKJKPC9evKIz0flMGF6wWui1jf-dcDSzOZkFbndGi4f_KkajiKkfYbIzQBjACbQpc9TnKHM-/s1600/090820091291.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1200&quot; data-original-width=&quot;1600&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4slM3ZvFSq0GGOGD1YVVHQS5dx_DeYl4JqRqyOwq9Reo0RSbAlktNDIuTxR7UBKJKPC9evKIz0flMGF6wWui1jf-dcDSzOZkFbndGi4f_KkajiKkfYbIzQBjACbQpc9TnKHM-/s320/090820091291.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwAHlLVche-JOgq1zkzKMaO882xdzY-Kg19DoJmcZLe64hkExEUhAZq7jryDcgqeJQtZo2IDOw8WRTVmBJ0xb6WSoLDNPsvYEICG79qg5ws1e3RaIa3p2BjOF_S04kt5D07Bli/s1600/090820091292.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1200&quot; data-original-width=&quot;1600&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwAHlLVche-JOgq1zkzKMaO882xdzY-Kg19DoJmcZLe64hkExEUhAZq7jryDcgqeJQtZo2IDOw8WRTVmBJ0xb6WSoLDNPsvYEICG79qg5ws1e3RaIa3p2BjOF_S04kt5D07Bli/s320/090820091292.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDu7a0Wjc-omq0Gb3_oZBqITBe9A7McQLjFOaxFmOEjjsci_buPW5rTZoSsQFAr3Ef66qy-2piwzENY43tnG5AxBAny6ch78oq2icr0gBXGK5TEjmLgg3aDn4UIMeFIHX-vq6w/s1600/090820091293.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1200&quot; data-original-width=&quot;1600&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDu7a0Wjc-omq0Gb3_oZBqITBe9A7McQLjFOaxFmOEjjsci_buPW5rTZoSsQFAr3Ef66qy-2piwzENY43tnG5AxBAny6ch78oq2icr0gBXGK5TEjmLgg3aDn4UIMeFIHX-vq6w/s320/090820091293.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHSpBC8Uj3iUspQcJpNlLEWB2YFMfvWrjoB-GgfysN95Gpr67d8Qcm5X1fv5yxYq666vpsQMJedURwnlHMh0hZiPBvlxtPIy1qeQxOwTTeuHQ7UGyqsPEcQygPppLh1XqtN1Uf/s1600/090820091294.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1200&quot; data-original-width=&quot;1600&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHSpBC8Uj3iUspQcJpNlLEWB2YFMfvWrjoB-GgfysN95Gpr67d8Qcm5X1fv5yxYq666vpsQMJedURwnlHMh0hZiPBvlxtPIy1qeQxOwTTeuHQ7UGyqsPEcQygPppLh1XqtN1Uf/s320/090820091294.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDLPMOC4kkLWJPKAZLyL02HK2yFX-5YHAs6dORktl_ebFJm4-UeUY7iUBcJzSUoTYaxQ0uv1tmMhDANsDTSYvmMaclWfIk5U5e0MJ3ILbdcFtzV8DdqH-qGHkFaLvghkD7yaKK/s1600/090820091295.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1200&quot; data-original-width=&quot;1600&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDLPMOC4kkLWJPKAZLyL02HK2yFX-5YHAs6dORktl_ebFJm4-UeUY7iUBcJzSUoTYaxQ0uv1tmMhDANsDTSYvmMaclWfIk5U5e0MJ3ILbdcFtzV8DdqH-qGHkFaLvghkD7yaKK/s320/090820091295.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/883656885058106459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/883656885058106459' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/883656885058106459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/883656885058106459'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/08/get-lucky-with-kawasaki.html' title='Got lucky with Kawasaki'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB4u9vmGwfxs82C2jXcia4M7UnaACq5iaPt1Hzk1smzKxlS0BQ5HLc2QC3MCLVhrg71RRf9X84mYhCosU_qwBzw-d0drNonFd9EFpf1orlqkdkB1MfPt-mI-2bcvgS6bVeTBMp/s72-c/090820091289.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-3043596485449572202</id><published>2009-07-06T13:08:00.025+03:00</published><updated>2014-09-15T11:47:57.074+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>Real Time Color Based Object Tracking</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
This is my first attempt on Real Time Color Based Object Tracking/Recognition from a C# application I&#39;ve build using AVICap.&lt;br /&gt;
The technique is very simple and very slow but it describes the basic idea... I use avicap32.dll to interact with webcam, grabbing the frames  and  represent them in a new picture box. After that the program scan every new picture-frame to track the position of a constructed RGB palette based on the sampling pixel.&lt;br /&gt;
&lt;br /&gt;
There is also some other more sophisticated methods which applies image filtering like thresholding or bluring but it&#39;s still under -a lot of- development and I don&#39;t want to go further yet. Probably I won&#39;t even bother to implement.&lt;br /&gt;
&lt;br /&gt;
Source code &lt;a href=&quot;https://sourceforge.net/projects/objtacking/files/rtcbot.zip/download&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Download&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;object height=&quot;344&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/zstj8vJ609A&amp;amp;hl=en&amp;amp;fs=1&amp;amp;&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;embed src=&quot;http://www.youtube.com/v/zstj8vJ609A&amp;amp;hl=en&amp;amp;fs=1&amp;amp;&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; height=&quot;344&quot; width=&quot;425&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/3043596485449572202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/3043596485449572202' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3043596485449572202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3043596485449572202'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/07/real-time-color-based-object-tracking.html' title='Real Time Color Based Object Tracking'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-3052465788635181457</id><published>2009-02-06T11:44:00.044+02:00</published><updated>2011-11-14T16:42:27.098+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET"/><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>ASP.NET (C#) Intranet Application/CMS</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;http://www.jambel.net/demo_intranet&quot; target=&quot;_blank&quot;&gt;&lt;img align=&quot;right&quot; border=&quot;0&quot; hspace=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgniHBlCnCYzfan9NBbTpLkqJjrDk_V_QzVYMmu9eoC6Gtnd_RCURt6rLnD39FpO2qvOE7A7oxg3bGAcVgnL3RhnwkZd41YZW5aNtMGdkPC_sL3KzjNnYLYqATXdNLBjoWF1_Bw-g/s256/intranet.jpg&quot; style=&quot;margin: 0pt 0px 0px 10pt;&quot; vspace=&quot;0&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;This is one of the latest project I&#39;ve created for the company I currently work for. It&#39;s an intranet/CMS application developed in .NET platform.&lt;br /&gt;
&lt;br /&gt;
You can take a sneak peek &lt;a href=&quot;http://www.jambel.net/demo_intranet&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;here&lt;/b&gt;&lt;/a&gt; or click the image.&lt;br /&gt;
&lt;u&gt;&lt;br /&gt;
Login information&lt;/u&gt;&lt;br /&gt;
&lt;b&gt;username&lt;/b&gt;: demo&lt;br /&gt;
&lt;b&gt;password&lt;/b&gt;: demo&lt;br /&gt;
&lt;br /&gt;
&lt;strike&gt;This is just for demo purposes and some modules may not be working properly due to some policies and settings. I&#39;m going to debug it thou and provide it as complete as possible&lt;/strike&gt;.&lt;br /&gt;
&lt;b&gt;UPDATE:&lt;/b&gt; I believe now it&#39;s in a mature competitive level!&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;UPDATE #2 (April 7, 2010):&lt;/b&gt; Download &lt;a href=&quot;http://www.jambel.net/downloads/jaNET_User_Manual.pdf&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;User Manual&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/3052465788635181457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/3052465788635181457' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3052465788635181457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/3052465788635181457'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/02/intranet-application.html' title='ASP.NET (C#) Intranet Application/CMS'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgniHBlCnCYzfan9NBbTpLkqJjrDk_V_QzVYMmu9eoC6Gtnd_RCURt6rLnD39FpO2qvOE7A7oxg3bGAcVgnL3RhnwkZd41YZW5aNtMGdkPC_sL3KzjNnYLYqATXdNLBjoWF1_Bw-g/s72-c/intranet.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-4874887581937125989</id><published>2009-01-31T10:58:00.011+02:00</published><updated>2011-11-14T14:50:13.150+02:00</updated><title type='text'>New jambel.net</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;175&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfRWSS93ccH4EpDQLUch-9P7v8MRqH_ekFqtETUqqXO6_b2m3gqnOGZgdALLs3mpuV4VdN5KwzUpcQINhccuJ5w0IHoQlAvL2MiL9SbcXHBwn1onD_jw8w67iW213sxtnnUcMDYw/s240/jambelnet.jpg&quot; style=&quot;float: left; margin: 0pt 10px 0px 0pt;&quot; width=&quot;200&quot; /&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;My new website based on &lt;a href=&quot;http://www.joomla.com/&quot;&gt;Joomla&lt;/a&gt; is ready!&lt;br /&gt;
See you &lt;a href=&quot;http://new.jambel.net/&quot;&gt;there&lt;/a&gt;...&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;UPDATE&lt;/b&gt;: I discontinue updating joomla website and I&#39;ll continue writing in this blog.&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/4874887581937125989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/4874887581937125989' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/4874887581937125989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/4874887581937125989'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/01/new-jambelnet.html' title='New jambel.net'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfRWSS93ccH4EpDQLUch-9P7v8MRqH_ekFqtETUqqXO6_b2m3gqnOGZgdALLs3mpuV4VdN5KwzUpcQINhccuJ5w0IHoQlAvL2MiL9SbcXHBwn1onD_jw8w67iW213sxtnnUcMDYw/s72-c/jambelnet.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-8936246573012486818</id><published>2009-01-29T09:55:00.024+02:00</published><updated>2010-07-12T11:19:33.045+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life Clicks"/><title type='text'>Working abroad</title><content type='html'>&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://www.heartbeatgym.com/picts/german-flag-sphere.jpg&quot; style=&quot;cursor: pointer; float: right; height: 50px; margin: 0pt 0pt 10px 10px; width: 50px;&quot; /&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;After lots of thoughts and consideration I decided that I&#39;m available working abroad especially in Berlin, Germany.&lt;br /&gt;
If you are an employer and you are interested to hire me then maybe you want to take a look at...&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;a href=&quot;http://jambelnet.blogspot.com/p/about-me.html&quot;&gt;About me and my career so far&lt;/a&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;a href=&quot;http://www.jambel.net/resume.htm&quot;&gt;My complete resume&lt;/a&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;a href=&quot;http://jambelnet.blogspot.com/p/contact.html&quot;&gt;Contact me&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Any proposal are very welcome!&lt;br /&gt;
&lt;br /&gt;
Thanks in advance!&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/8936246573012486818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/8936246573012486818' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/8936246573012486818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/8936246573012486818'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2009/01/working-abroad.html' title='Working abroad'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-548899465052912523</id><published>2008-07-17T14:35:00.063+03:00</published><updated>2012-08-23T17:11:29.274+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Mobile"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Python"/><title type='text'>Quick and simple step by step ensymble guide for Windows</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
This tutorial is intended for a group of people that they&#39;re not programmers or they&#39;re new to &lt;a href=&quot;http://www.pys60.org/&quot; target=&quot;_blank&quot;&gt;PyS60&lt;/a&gt; and like to experiment making .sis applications for mobile phones. There&#39;s a lot of documentation on the internet about ensymble but not a single simple step by step guide.&lt;br /&gt;
&lt;br /&gt;
So the steps we have to follow to built a .sis file are:&lt;br /&gt;
&lt;br /&gt;
1) Download and install &lt;a href=&quot;http://gnuwin32.sourceforge.net/downlinks/openssl-bin.php&quot;&gt;OpenSSL for Windows&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
2) Download &lt;a href=&quot;http://www.jambel.net/downloads/python/ensymble_python2.5-0.26.zip&quot;&gt;ensymble python script&lt;/a&gt; unzip it and copy it to OpenSSL folder (something like: C:\Program Files\GnuWin32\bin\ensymble_python2.5-0.26.py).&lt;br /&gt;
&lt;br /&gt;
3) Also copy your python script to OpenSSL folder and run ensymble command on the command prompt:&lt;br /&gt;
&lt;code&gt;python ensymble_python2.5-0.26.py py2sis --uid=0xE0000000 --appname=your_app_name --version=1.0.0 your_app_name.py your_app_name.sis&lt;/code&gt;now you have probably successfully build your .sis file. Also, be sure that you have path your python directory.&lt;br /&gt;
&lt;br /&gt;
4) Go to &lt;a href=&quot;https://www.symbiansigned.com/app/page/public/openSignedOnline.do&quot;&gt;Open Signed Online&lt;/a&gt; and fill the required fields.&lt;br /&gt;
&lt;br /&gt;
5) You&#39;ll get an email with a signed sis file.&lt;br /&gt;
&lt;br /&gt;
6) Install it on your phone and enjoy it!&lt;br /&gt;
&lt;br /&gt;
Good luck!&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;Resources:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
Ensymble: &lt;a href=&quot;http://ensymble.googlecode.com/&quot;&gt;http://ensymble.googlecode.com&lt;/a&gt;&lt;br /&gt;
Ensymble readme: &lt;a href=&quot;http://code.google.com/p/ensymble/wiki/Welcome?tm=6&quot;&gt;http://code.google.com/p/ensymble/wiki/Welcome?tm=6&lt;/a&gt;&lt;br /&gt;
OpenSSL: &lt;a href=&quot;http://gnuwin32.sourceforge.net/packages/openssl.htm&quot;&gt;http://gnuwin32.sourceforge.net/packages/openssl.htm&lt;/a&gt;&lt;br /&gt;
Open signed online: &lt;a href=&quot;https://www.symbiansigned.com/app/page/public/openSignedOnline.do&quot;&gt;https://www.symbiansigned.com/app/page/public/openSignedOnline.do&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/548899465052912523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/548899465052912523' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/548899465052912523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/548899465052912523'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2008/07/simple-step-by-step-ensymble-guide-for.html' title='Quick and simple step by step ensymble guide for Windows'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-5940358908041207049</id><published>2008-06-13T14:07:00.071+03:00</published><updated>2011-11-14T14:53:58.768+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Mobile"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><category scheme="http://www.blogger.com/atom/ns#" term="Python"/><title type='text'>Spy phone python script for S60</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhttx12vdmQgdqqnj09pN2GCpCSqwC88ZMGTvJPSAE-URHOchaCyXf-s_WMQO82963m8BELGjMlRa4O2vHA08tdf6240u3DlFsMsU8Z9nQLwgOYDhgyB_e9-sA-izvdK8PJ33M0VQ/s128/1321275151_spyware.png&quot; style=&quot;float: right; margin: 0pt 0pt 10px 10px;&quot; /&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;The other day I was surfing some surveillance websites and I found some patented mobile phones called spy phones and also some spy software. All of course, at high prices for my standards! The concept is, you call the target phone which will result in the answering of it and let you listen into the surroundings. They also have some extra features like stealth/ghost mode, no lights or zero ringings etc etc.&lt;br /&gt;
&lt;br /&gt;
However the price as I mention isn&#39;t reasonable and it&#39;s possible for someone with basic programming skills and some research on the internet to do that kind of work with no money at all! How?&lt;br /&gt;
&lt;br /&gt;
Well, I wrote a simple python script for S60 compatible devices that allows you to call the target cellphone, which will acknowledge a number of your choice and afterwards when you hung up it automatically start recording any ambient sound or conversation surrounding the phone.&lt;br /&gt;
It has no ghost or no ringing capability but if you are using a Nokia phone you can achieve this by assigning a blank sound to that entry.&lt;br /&gt;
&lt;br /&gt;
I have tested it successfully on my Nokia N95 8GB with Python for S60 1.4.2 final.&lt;br /&gt;
You can download the script &lt;a href=&quot;https://sourceforge.net/projects/kuku/files/kuku.zip/download&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;here&lt;/b&gt;&lt;/a&gt; (&lt;b&gt;Last update: Sun 23 2010&lt;/b&gt;).&lt;br /&gt;
&lt;br /&gt;
Have fun :)&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/5940358908041207049/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/5940358908041207049' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/5940358908041207049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/5940358908041207049'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2008/06/spy-phone-python-script-for-s60.html' title='Spy phone python script for S60'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhttx12vdmQgdqqnj09pN2GCpCSqwC88ZMGTvJPSAE-URHOchaCyXf-s_WMQO82963m8BELGjMlRa4O2vHA08tdf6240u3DlFsMsU8Z9nQLwgOYDhgyB_e9-sA-izvdK8PJ33M0VQ/s72-c/1321275151_spyware.png" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-561750450647057210</id><published>2008-04-26T21:48:00.008+03:00</published><updated>2011-11-14T15:00:51.944+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Java ME"/><category scheme="http://www.blogger.com/atom/ns#" term="MIDlet"/><category scheme="http://www.blogger.com/atom/ns#" term="Mobile"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>Wake on LAN MIDlet</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;Wake On LAN Mob is a &lt;a href=&quot;http://en.wikipedia.org/wiki/Java_ME&quot; target=&quot;_blank&quot;&gt; J2ME&lt;/a&gt; application for mobile devices.&lt;br /&gt;
&lt;br /&gt;
When I first posted Wake on LAN Java MIDlet on my &lt;a href=&quot;http://www.jambel.net/&quot; target=&quot;_blank&quot;&gt;website&lt;/a&gt; I received various e-mails asking me for some extra features, modifications and source code requests. I didn&#39;t expect so much interest at all so I decided to provide the source code.&lt;br /&gt;
&lt;br /&gt;
Tested on Nokia 6630, Nokia N95 8GB, Nokia E65, HTC Touch, HTC TyTN II.&lt;br /&gt;
Screenshots: &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdMNjurikId6gLQIeVmX5yHOY9GNv6Ad8VVLY7UcV1mBsVpLW3f0BzptVYRg99QQIoPjS_VuzWOYbES3Yf9OUlo1k43DyTusqPFSfAqWk5WgHVreib4C0nsbHA45d-z9C_pcqRyg/h120/scr1.jpg&quot; target=&quot;_blank&quot;&gt;1&lt;/a&gt;, &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxeaT2daCboyl_RWSWR3PAE4oTu1Eo06zVeEasKVNDV_6coGsZxxzx15-4l6UxVDfLHmttQRgeF1nL5xif8i1zs7ZHGHZQief9C6vUXaMOrFnhM7hyJBSYPvt79HApLRIB5Ts5eQ/s152/scr2.jpg&quot; target=&quot;_blank&quot;&gt;2&lt;/a&gt;, &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFFMlujPH8SI5nKyF3GWq_osvoQus2R-DHQjGxciNRa0cpyauE0la_2ecYaxWAOXDuY99q5eWf0en8uDXI8SiyUA9V9rGELdYmMR1P4yYDiDJa78O6ZsCym6AyHYtLAxNXHHeFHA/s166/scr3.jpg&quot; target=&quot;_blank&quot;&gt;3&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Here is my simple implementation, enjoy!&lt;code&gt;// © J@mBeL.net&lt;br /&gt;
import java.util.Vector;&lt;br /&gt;
import javax.microedition.midlet.*;&lt;br /&gt;
import javax.microedition.lcdui.*;&lt;br /&gt;
import javax.microedition.io.*;&lt;br /&gt;
&lt;br /&gt;
public class WakeOnLan extends MIDlet implements CommandListener {&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private Display display;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private Form mainScr;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private Command OKCommand;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private Command ClearCommand;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private Command exitCommand;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private static TextField tfIP;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private static TextField tfMAC;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private Alert alert;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private static final int PORT = 9;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public WakeOnLan() {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; display = Display.getDisplay(this);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr = new Form(&quot;WakeOnLan Mob&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; tfIP = new TextField(&quot;IP Address:\n&quot;, &quot;&quot;, 16, 0);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; tfMAC = new TextField(&quot;MAC Address:\n&quot;, &quot;&quot;, 17, 0);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr.append(tfIP);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr.append(tfMAC);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr.append(&quot;© 2007 jambel.net&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; OKCommand = new Command(&quot;Send&quot;, Command.OK, 1);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ClearCommand = new Command(&quot;Clear&quot;, Command.ITEM, 1);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; exitCommand = new Command(&quot;Exit&quot;, Command.EXIT, 1);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr.addCommand(OKCommand);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr.addCommand(ClearCommand);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr.addCommand(exitCommand);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; mainScr.setCommandListener(this);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private class SendPacket implements Runnable {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; public void run(){&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; SendStr(tfIP.getString(), tfMAC.getString());&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; private void SendStr(String ipStr, String macStr) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(ipStr.length() == 0 || macStr.length() == 0) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; alert = new Alert(&quot;Please fill IP and MAC address fields.&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; display.setCurrent(alert, mainScr);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; else {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] macBytes = getMacBytes();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytes = new byte[6 + 16 * macBytes.length];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; 6; i++) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; bytes[i] = (byte) 0xff;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 6; i &amp;lt; bytes.length; i += macBytes.length) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; System.arraycopy(macBytes, 0, bytes, i, macBytes.length);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; String address = &quot;datagram://&quot; + ipStr + &quot;:&quot; + PORT;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; DatagramConnection packet = (DatagramConnection)Connector.open(address);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Datagram dgram = packet.newDatagram(bytes, bytes.length, address);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; packet.send(dgram);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; packet.close();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; alert = new Alert(&quot;Wake-on-LAN packet sent.&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; display.setCurrent(alert, mainScr);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception e) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; alert = new Alert(&quot;Failed to send Wake-on-LAN packet: &quot; + e);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; display.setCurrent(alert, mainScr);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //System.exit(1);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private byte[] getMacBytes() throws IllegalArgumentException {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytes = new byte[6];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; String sep;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(tfMAC.getString().indexOf(&quot;:&quot;) &amp;gt; 0)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; sep=&quot;:&quot;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; sep=&quot;-&quot;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; String[] hex = split(tfMAC.getString(),sep);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (hex.length != 6) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new IllegalArgumentException(&quot;Invalid MAC address.&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; 6; i++) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; bytes[i] = (byte) Integer.parseInt(hex[i], 16);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; catch (NumberFormatException e) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new IllegalArgumentException(&quot;Invalid hex digit in MAC address.&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return bytes;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private static String[] split(String original, String separator) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Vector nodes = new Vector();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Parse nodes into vector&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; int index = original.indexOf(separator);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; while(index&amp;gt;=0) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nodes.addElement( original.substring(0, index) );&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; original = original.substring(index+separator.length());&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; index = original.indexOf(separator);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Get the last node&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nodes.addElement( original );&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Create splitted string array&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; String[] result = new String[ nodes.size() ];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if( nodes.size()&amp;gt;0 ) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for(int loop=0; loop &amp;lt; nodes.size(); loop++)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; result[loop] = (String)nodes.elementAt(loop);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return result;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public void commandAction(Command c, Displayable d) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (c == OKCommand) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (d == mainScr) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; SendPacket doIt = new SendPacket();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Thread myThread = new Thread( doIt );&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; myThread.start();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; display.setCurrent(mainScr);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } else if (c == ClearCommand) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; tfIP.setString(&quot;&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; tfMAC.setString(&quot;&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } else if (c == exitCommand) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; destroyApp(false);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; notifyDestroyed();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public void startApp() {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Display.getDisplay(this).setCurrent(mainScr);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public void pauseApp() {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public void destroyApp(boolean unconditional) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
}&lt;br /&gt;
&lt;/code&gt;You can download it &lt;a href=&quot;https://sourceforge.net/projects/wakeonlanmidlet/files/wol-mob.zip/download&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;here&lt;/b&gt;&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
You can freely distribute it as you wish and if you like just add a reference on &lt;a href=&quot;http://www.jambel.net/&quot;&gt;me&lt;/a&gt;.&lt;br /&gt;
Also you can e-mail me your modifications just to notify me.&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/561750450647057210/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/561750450647057210' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/561750450647057210'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/561750450647057210'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2008/04/wake-on-lan-midlet.html' title='Wake on LAN MIDlet'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20562436.post-968050201580213666</id><published>2008-04-26T14:43:00.053+03:00</published><updated>2010-03-25T21:56:59.549+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life Clicks"/><title type='text'>Welcome to jambel.net blog</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;This is my first blogging attempt!&lt;br /&gt;
&lt;br /&gt;
My name is John Ambeliotis and I&#39;m a Software Engineer from Greece. You can check my full profile &lt;a href=&quot;http://jambelnet.blogspot.com/p/about-me.html&quot;&gt;here&lt;/a&gt; if you like.&lt;br /&gt;
&lt;br /&gt;
In this place I&#39;ll try to share some code parts I use and how do I do things in a range of computer languages/technologies. Also maybe some thoughts or life events that might happen and worth some mention, at least to me :)&lt;br /&gt;
&lt;br /&gt;
I hope you to find some useful stuff.&lt;br /&gt;
&lt;br /&gt;
Thanks for your visit, let&#39;s get started...&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jambelnet.blogspot.com/feeds/968050201580213666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/20562436/968050201580213666' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/968050201580213666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20562436/posts/default/968050201580213666'/><link rel='alternate' type='text/html' href='http://jambelnet.blogspot.com/2008/04/welcome-to-jambelnet-blog_6711.html' title='Welcome to jambel.net blog'/><author><name>J@mBeL</name><uri>http://www.blogger.com/profile/08070875800918729353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-g1Cd2f2cuSY/URpNABJoPWI/AAAAAAAAAZE/b9ks8xrVOcc/s220/jaNET-logo.png'/></author><thr:total>0</thr:total></entry></feed>