<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>embed21.com</title>
	<atom:link href="http://www.embed21.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.embed21.com</link>
	<description>Embedded Designs &#38; Computer Interfacing</description>
	<lastBuildDate>Fri, 04 Jun 2010 09:26:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>2nd Place in Microsoft ImagineCup Egypt 2010</title>
		<link>http://www.embed21.com/?p=427</link>
		<comments>http://www.embed21.com/?p=427#comments</comments>
		<pubDate>Sun, 25 Apr 2010 21:30:31 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[Achievements]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=427</guid>
		<description><![CDATA[After 9 month working on the project that we (me and my team) created for the poland imaginecup 2010, and making a hardware software solution. We won the 2nd place! 
We have passed over 3 different stages. The first stage, each team had to send their proposals by email to the ImagineCup Committee. After a week, [...]]]></description>
			<content:encoded><![CDATA[<p>After 9 month working on the project that we (me and my team) created for the poland imaginecup 2010, and making a hardware software solution. We won the 2nd place! <a href="http://www.embed21.com/wp-content/uploads/2010/04/imagine.jpg"><img class="alignright size-thumbnail wp-image-397" title="imagine" src="http://www.embed21.com/wp-content/uploads/2010/04/imagine-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p>We have passed over 3 different stages. The first stage, each team had to send their proposals by email to the ImagineCup Committee. After a week, from the deadline… They sent us an email, congratulating us for qualifying into the next round! There was 16 teams who qualified in this round. Half of them where from an institute called ITI (first time to hear about it).</p>
<p>The first presentation that we made was in the morning at 11:00 AM, and it was very nice and we showed them the live demo of the Software (C#, SQL Server, WPF, GMaps) and Hardware (GM862 <img src="http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif" alt=":D" />, GPRS, GSM, RC car). Looking at the reactions of the judges they were thrilled and very impressed about the idea that we came with. There was one MSP member telling us that this was one of the best presentations that he have ever seen.</p>
<p>The next day, they sent us an email telling us that we have qualified to the next round (Top 8). So we went there the next Saturday to give our presentation to another judging team and they were thrilled. One judge told us “Very impressive work” while the other said “very good work”. I was so happy to hear that from the judges…</p>
<p>The next day, they sent us an email telling us that we have qualified to the final round. And the next presentation was on the next Saturday (yesterday).</p>
<p>We were there at 9:00 AM to rehearse for 30 minutes and then start at 11:00 AM. In the end of the day (at about 3:30 PM) the winners were announced.</p>
<p style="text-align: center;">Team19- First Place<br />
G-Cubed &#8211; Second Place (That is me <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> )<br />
Wiiii &#8211; Third Place</p>
<p>We are now waiting for Microsoft to send us the certificates, but this might take a couple of months as one staff member told us.</p>
<p>Our solution that we offered was going to save more than 1,300 Life/Day!<br />
In the end, I wanted to say to the team who got 1st place, best of luck in the Global Finals!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=427</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>1st Place Tanta University</title>
		<link>http://www.embed21.com/?p=440</link>
		<comments>http://www.embed21.com/?p=440#comments</comments>
		<pubDate>Sat, 06 Mar 2010 13:37:24 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[Achievements]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=440</guid>
		<description><![CDATA[This was an idea that we made with Vodafone as a sponsor. And we won the first place in the contest that Tanta University &#8211; Faculty of Engineering made. We were supposed to meet the Minister of State for Administer Development Dr. Ahmed Darwish, but I was in Germany. So I didn&#8217;t have the chance [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.embed21.com/wp-content/uploads/2010/05/DSC00009.jpg"><img class="alignright size-thumbnail wp-image-441" title="1st Place" src="http://www.embed21.com/wp-content/uploads/2010/05/DSC00009-150x150.jpg" alt="" width="150" height="150" /></a>This was an idea that we made with Vodafone as a sponsor. And we won the first place in the contest that Tanta University &#8211; Faculty of Engineering made. We were supposed to meet the Minister of State for Administer Development Dr. Ahmed Darwish, but I was in Germany. So I didn&#8217;t have the chance to meet him, but one of my team mates went there and we were awarded 1st Place.</p>
<p>After a year, IEEE Egypt made a ceremony for the people who got awarded in several contests. It was really something, to get awarded for a project that you did and will help the people in their daily life later on.</p>
<p>The project that we created was handed to Vodafone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=440</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL remote accesing using C#</title>
		<link>http://www.embed21.com/?p=362</link>
		<comments>http://www.embed21.com/?p=362#comments</comments>
		<pubDate>Fri, 05 Mar 2010 11:11:46 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=362</guid>
		<description><![CDATA[Some might be thinking now &#8220;what does this relates to the Telit GM862 module?&#8221;. And a simple answer would be &#8220;TRACKING&#8221;
We need to know a way to access our Database so that we can extract the needed data (longitude, latitude, seen satellite, and etc.). After getting all these information we want to put some markers [...]]]></description>
			<content:encoded><![CDATA[<p>Some might be thinking now &#8220;what does this relates to the Telit GM862 module?&#8221;. And a simple answer would be &#8220;TRACKING&#8221;</p>
<p>We need to know a way to access our Database so that we can extract the needed data (longitude, latitude, seen satellite, and etc.). After getting all these information we want to put some markers on a map (ex. Google Maps or Bing Maps), to show us exactly where our device is located. In other words, we are going to put this module in a car, and using the application that we are going to do, we will be able to easily track the module from a computer at home. Sounds cool! <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>We will write our code using C#, and the database that I am using will be MySQL DB. I worked on the open source MySQL database because my web server is running on linux, and it has MySQL server installed on it. But defiantly you can have this application running on any type of database server out there like Oracle, SQL server, etc. Our application will be a desktop application not a web-based one.</p>
<p>First we need to download the connector that enables us to make the connection to the DB server. You can easily download this connector from MySQL website <a title="MySQL connector" href="http://dev.mysql.com/downloads/connector/net/6.1.html" target="_blank">CLICK HERE</a><br />
For me, I will be working on Connector-Net 6.1.3. After that, install the MySQL connector on your computer.</p>
<p>To be continued&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=362</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Connecting to the Internet via GPRS</title>
		<link>http://www.embed21.com/?p=200</link>
		<comments>http://www.embed21.com/?p=200#comments</comments>
		<pubDate>Sat, 06 Feb 2010 09:36:00 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[GSM/GPRS]]></category>
		<category><![CDATA[+++]]></category>
		<category><![CDATA[APN]]></category>
		<category><![CDATA[Escape Sequence]]></category>
		<category><![CDATA[GM862]]></category>
		<category><![CDATA[GM862 APN]]></category>
		<category><![CDATA[GPRS]]></category>
		<category><![CDATA[PIC18F452]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=200</guid>
		<description><![CDATA[Now lets get this party started!  
OK, now we are ready to go into details on how to make an internet connection from the PIC18F450. This sounds fun!
We need some login information that enables us to access the internet. This is called by the network provider &#8220;internet settings&#8221; , &#8220;internet setting file&#8221; or something [...]]]></description>
			<content:encoded><![CDATA[<p>Now lets get this party started! <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>OK, now we are ready to go into details on how to make an internet connection from the PIC18F450. This sounds fun!<br />
We need some login information that enables us to access the internet. This is called by the network provider &#8220;internet settings&#8221; , &#8220;internet setting file&#8221; or something like that. For example if you bought a brand new Nokia phone, and when you insert the SIM card into it, some providers sends the internet settings as soon as they detect that this phone is for the first time to be connected to there network (they do that by IMEI). Other providers, you have to call the customer service so that they send you the internet settings. So, we really need to know the contents of the internet setting file that the provider send so that we can know: <strong>APN</strong>, <strong>username</strong> and <strong>password</strong>.</p>
<p>Before going into details, the first thing that you must do, is call the customer service from the SIM that you are going to use from any cellular phone, and ask them if SIM is GPRS enables or not. Because some providers are not default enabled, so you need to call them first.</p>
<p>What is APN?<br />
It stands for Access Point Name. This name gives you a gateway rout to the network that you want to connect to like WAP or internet or VPN. The question now is how am I going to get the APN of my network provider?</p>
<p>Two ways to get the APN:</p>
<p><span id="more-200"></span> 1- You can go to MIG33 (link below). This website shows a table of all APNs with username and password of all cellular provider around the globe. But the problem is, it might not be updated. So try it out first and if things work then skip the second way.<br />
<a href="http://wiki.mig33.com/?q=node/30">CLICK HERE</a></p>
<p>2-Another way to get the APN, username and password from the operator customer service. But the thing is, they will want to know your phone model, and if you say TELIT they will go like &#8220;what&#8230;.??&#8221; or they will say &#8220;you will not be able to access the internet with this phone&#8221; or any excuse which has no meaning. They best way to do this is to tell them that you have an i-MATE phone version 6.0, or any pocket PC that has a windows mobile edition on it, and you need to configure it manually. Ofcourse you don&#8217;t need a phone like this. Just get a piece of paper and a pen, and go with them through the steps (something  like: Go To start-&gt;settings&#8230; and so on). And then they will tell you for the &#8220;APN&#8221; or &#8220;Access Point Name&#8221; type something, so you need to write this down, and then for the username and password you need to write it down as well. Note that some providers leaves the username and password blank so don&#8217;t be surprised. Now you should have APN, username and password (if they are needed) on a piece of paper.</p>
<p>Think of connecting your Telit module to the internet as connecting the 56k modem to the internet (back to these miserable days <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ). In the GPRS manual it gives you an example on page 54, using the new AT commands that they have added to the module. I tried this example, but I had no luck at all to make the module connect to the GPRS. So, instead I used the old AT commands that actually do the job just perfect! <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><a href="http://www.embed21.com/wp-content/uploads/2010/02/Telit_Easy_GPRS_User__Guide_r7.pdf">Telit Easy GPRS User Manural Guide</a></p>
<pre class="brush: c; ">

AT+CGDCONT=1,&quot;IP&quot;,&quot;ETISALAT&quot;\r
OK

AT#USERID=&quot;&quot;\r
OK

AT#PASSW=&quot;&quot;\r
OK

AT#GPRS=1\r
+IP: 10.254.3.1
OK

AT#SKTD=0,80,&quot;www.embed21.com&quot;\r
//Delay: This delay depend on how fast your network connects you to the internet.
CONNECT

GET / HTTP/1.1\r\n
Host: www.embed21.com\r\n
Connection: keep-alive\r\n
\r\n

//DELAY: This delay depend on the GPRS class (your GPRS speed) and the webpage size.

HTTP/1.1 200 OK
Date: Sat, 06 2010 10:21:58 GMT
Server: Apache/1.3.27 (Unix)
Last-Modified: Sat, 06 2010 10:21:58 GMT
Content-Type: text/html
Connection: close

&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 3.2 FINAL//EN&quot;&gt;
&lt;HTML&gt;
//Here where the html of our page show up
&lt;/HTML&gt;

//As you want to go to the command prompt of the module you  shall use the following code to escape
+++
//delay or sometime called pause in the manual
/r
</pre>
<p>In my case my network provider has an APN &#8220;ETISALAT&#8221;, so what you should do is, you will have to rename it, and put your network APN. Etisalat, doesn&#8217;t need a username or password to access the GPRS, but in most other countries you will need a username and password, so double check first before leaving it blank.<br />
When we send At#GPRS=1, it replies back with a local IP address, when you obtain this IP address then this means that you are successfully connected to the internet.</p>
<p>All what is left is some socket programing and HTTP requests, and this can be shown as a above.</p>
<p>The problem that I am still facing till now is; the socket makes the first connection to the web page successfully and return a 200 code. GREAT!! But when it access the website one more time, it gives me a 402 error and sometime other errors. One person told me that this problem is due to the server, as it closes the session and he tried it on a Java EE server, and he had no problem at all, but when he tested it on an Apache web server this problem showed up, but I will have to investigate and double check if that is true or not.</p>
<p>So if you know the solution to this problem please tell us how to solve it.<br />
If you have questions please post them here.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=200</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
		<item>
		<title>GPS to buy and NOT to buy</title>
		<link>http://www.embed21.com/?p=297</link>
		<comments>http://www.embed21.com/?p=297#comments</comments>
		<pubDate>Mon, 01 Feb 2010 13:21:29 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[GPS]]></category>
		<category><![CDATA[EasyGPS]]></category>
		<category><![CDATA[GM862]]></category>
		<category><![CDATA[GM862 QUAD GPS]]></category>
		<category><![CDATA[Grand Studio]]></category>
		<category><![CDATA[Parallax]]></category>
		<category><![CDATA[Parallax GPS]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=297</guid>
		<description><![CDATA[To tell you the truth, the idea of making a GPS circuit wasn&#8217;t in my mind at all, until I have seen this video on Youtube 3 years ago.

Then I thought to myself why not make a GPS circuit as well, it seems easy and pretty cool! I will just buy this GPS module called [...]]]></description>
			<content:encoded><![CDATA[<p>To tell you the truth, the idea of making a GPS circuit wasn&#8217;t in my mind at all, until I have seen this video on Youtube 3 years ago.<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/s6-1uS0Pm_U&amp;hl=en_US&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/s6-1uS0Pm_U&amp;hl=en_US&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Then I thought to myself why not make a GPS circuit as well, it seems easy and pretty cool! I will just buy this GPS module called Parallax GPS from Grand Studios and then I could start my very own GPS Navigation System!</p>
<p>I did buy this Parallax GPS module under this link: <a title="Parallax GPS" href="http://www.parallax.com/Store/Sensors/CompassGPS/tabid/173/ProductID/396/List/0/Default.aspx?SortField=ProductName,ProductName" target="_blank">CLICK HERE</a>. To tell you the truth 80 bucks for this GPS module is pretty expensive. I was so excited to make this module work, and show me my coordinates where I am testing this module from. But the result where pretty shocking and not good! <img src='http://www.embed21.com/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> </p>
<p><span id="more-297"></span>Why?<br />
1- In this youtube video, they don&#8217;t show you the time that it takes such that it locks to the satellites. For me it took approximately 10 minutes to just lock to 3 satellites. <img src='http://www.embed21.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /><br />
2- The error of this module is terrible, and I am not talking here about +/-10 meters, but I am talking about -/- 1 kilometer (might be slightly less or slightly greater), and gave me an altitude about 200 meters above sea level, which I far doubt, because I live near the coast! <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /><br />
3-For one reason, I don&#8217;t believe this video because at the end they made geocasching, and they pretended that they found there treasure by the GPS circuit that they made, which I really doubt.</p>
<p>Ofcourse, I was thinking of making several projects with this module, but the readings where extremely shocking. So, I went for the Telit Module GM862 QUAD GPS. You can buy the whole thing (Board + GSM/GPRS modem + GPS Antenna) for $113. Yes, it is more expensive than the Parallax module but you can&#8217;t get a GSM/GPRS modem for $33??</p>
<p>Ok, when you buy this module it comes with a GPS antenna called SIRF III, and this antenna locks with 6 satellites in less than 30 seconds (NOTE: both tests where done from the same place). The accuracy of this antenna was so good (only +/-1meter). Added to this you have a GSM/GPRS module so you can do lots of things with this kit.<br />
<a title="http://www.mikroe.com/en/tools/gsm/easygsm-gprs-gm862-gps/" href="http://" target="_blank">CLICK HERE</a></p>
<p>So, a piece of advice if you have the money to buy a GPS module go for the Telit GM862 QUAD GPS and don&#8217;t buy the Parallax GPS module, and if can&#8217;t afford buying the Telit GM862 try to buy this board EasyGPS (<a title="EasyGPS" href="http://www.mikroe.com/en/tools/gps/easygps/" target="_blank">CLICK HERE</a>) and it costs about $90. I haven&#8217;t tried the EasyGPS board at all, but what I can assure you is Mikroelektronia sells excellent products.</p>
<p>To Bre Pettis (the person who made this YouTube video)<br />
I really like your Hacks and the youtube videos that you make; but please if there is something bad in somebodys circuit try to mention it out (like the GPS of Joe Grands)</p>
<p><a href="http://www.ahmct.ucdavis.edu/images_gpsatd/gps_atd_13.png"><img class="alignright" title="GPS test by UC Davis" src="http://www.ahmct.ucdavis.edu/images_gpsatd/gps_atd_13.png" alt="" width="63" height="83" /></a>In the end, I will upload a Satellite picture from Google Earth that compares both modules, when it is tested in my car. But for now, I can show you a test that was done by UC Davis (but there is no Parallax GPS antenna here). Have a look yourself.</p>
<p>And if anybody have any questions please don&#8217;t hesitate to ask!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=297</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Embedded World 2010</title>
		<link>http://www.embed21.com/?p=273</link>
		<comments>http://www.embed21.com/?p=273#comments</comments>
		<pubDate>Wed, 27 Jan 2010 16:52:54 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[Ethernet]]></category>
		<category><![CDATA[GSM/GPRS]]></category>
		<category><![CDATA[To do list]]></category>
		<category><![CDATA[embeddedworld2010]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=273</guid>
		<description><![CDATA[
One of the most known exhibitions for the embedded systems. Located in Nuremberg, Germany and it will start from 2 March 2009. I will do my best to go and attend this exhibition, and so as you.
see you there!
Embedded World 2010 (link)
]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-274" title="Embedded_Header_2010_EN" src="http://www.embed21.com/wp-content/uploads/2010/01/Embedded_Header_2010_EN.jpg" alt="" width="504" height="121" /></p>
<p>One of the most known exhibitions for the embedded systems. Located in Nuremberg, Germany and it will start from 2 March 2009. I will do my best to go and attend this exhibition, and so as you.</p>
<p>see you there!</p>
<p><a href="http://www.embedded-world.de/en/">Embedded World 2010 (link)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=273</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pause</title>
		<link>http://www.embed21.com/?p=142</link>
		<comments>http://www.embed21.com/?p=142#comments</comments>
		<pubDate>Wed, 13 Jan 2010 12:42:05 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[GSM/GPRS]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=142</guid>
		<description><![CDATA[I will not post that much this month, as I have FINALS to study for. So just pray for me!    
]]></description>
			<content:encoded><![CDATA[<p>I will not post that much this month, as I have FINALS to study for. So just pray for me! <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=142</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Interfacing the GM862 with PIC18F452</title>
		<link>http://www.embed21.com/?p=138</link>
		<comments>http://www.embed21.com/?p=138#comments</comments>
		<pubDate>Sun, 10 Jan 2010 15:12:19 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[GSM/GPRS]]></category>
		<category><![CDATA[GM862]]></category>
		<category><![CDATA[GM862-GPS]]></category>
		<category><![CDATA[ON_OFF]]></category>
		<category><![CDATA[PIC18F452]]></category>
		<category><![CDATA[PN2222A]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=138</guid>
		<description><![CDATA[Interfacing the PIC18F452 with the GM862 module is relatively simple. What will be left is only the code that needs to be burned on the PIC. By the way,no full codes will be posted here. I will only post the codes that will give you a good kick start because I think it is better [...]]]></description>
			<content:encoded><![CDATA[<p>Interfacing the PIC18F452 with the GM862 module is relatively simple. What will be left is only the code that needs to be burned on the PIC. By the way,no full codes will be posted here. I will only post the codes that will give you a good kick start because I think it is better to understand than to copy and paste. And there is a Chinese saying:</p>
<p style="text-align: center;"><em>Give a man a fish, you feed him for a day.<br />
Teach him to fish, and you feed him for lifetime. </em></p>
<p>This is a sample project that I made and it only deals with making phone calls and I will upload other videos for SMS, GPRS and Data Call:<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/y9f0ZkJBPZQ&amp;hl=en_US&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/y9f0ZkJBPZQ&amp;hl=en_US&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Now looking at the schematics you will find all the details on how to connect both the module and the PIC.<br />
<a href="http://www.embed21.com/wp-content/uploads/2010/01/2.jpg"><img class="size-thumbnail wp-image-281 alignright" title="GM862 with PIC18F452" src="http://www.embed21.com/wp-content/uploads/2010/01/2-150x150.jpg" alt="" width="150" height="150" /></a><br />
After doing the above connections, you need to start the module first and then initiate the baudrate that both of them will work on. The Telit module works on different values of baudrates (300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200). For me I shall work with baudrate 19200, but you can choose whatever baudrate that you want.</p>
<p>To start the module, you simply connect the ON_OFF pin to the ground for at least 1 sec (note: this pin is normally high). So you can do this by two ways. First way is to connect a switch and give the ON signal by hand, which is not a good idea. The second way which all of you will do, is to let the PIC18F452 do the job of turning the module ON. We will connect a transistor as shown in the schematic (PN2222A) such that when the base voltage is high, it allows the current to pass to the ground. So, you will need to make PORTC.PIN5 to be HIGH for 1 sec and then toggle it back to LOW (safety factor make it 1.1 sec).</p>
<p>So, after initializing the baudrate on the PIC you need to do the following at the start of your program:</p>
<pre class="brush: c; ">

while(recieved_serial!=&#039;AT;\nOK\r\n&#039;){
send_serial(&#039;AT\r&#039;);
delay_ms(300);   //Delay 300 mSec
}
</pre>
<p><span id="more-138"></span>We did this step, as the Module doesn&#8217;t know the baudrate that the PIC is set on, so we send multiple &#8216;AT&#8217; commands until the module figures out the right baudrate. Also, a thumb of rule, try to always put a delay of 300 ms after each command is being sent to the module.</p>
<p>Also, while we are setting up the baudrate of the module, it is trying to register to the cellular network at the same time. You can make sure that it is registering by the 1 sec flash of the STATUS_LED. When the flashing becomes every 3 sec, then now the module is registered to the network. Before sending any command, you need to let the microcontroller know that the module is registered to the network. You can do this with the command AT+CREG?. When it returns +CREG: 0,2 then this means that it is still registering to the network, so you will have to wait for 300 mSec until you can double check again. If it gives +CREG:0,1 then this means that it registered to the cellular network. VOILA!</p>
<p>Something to mention until further experiments:<br />
In the software manual, it says:</p>
<pre class="brush: c; ">

AT+CREG?
//Reply from the telit is:
+CREG: 0,3
OK
</pre>
<p>Which means that when you send the command AT+CREG? to the module it will reply back with only +CREG: 0,3 and OK, but that is not true, as they have forgot to add something else. When you send any AT command it will first reply  back with the same command and with a semicolon at the end. Also don&#8217;t forget after sending each and every AT command you must end the command with \r\n. The person who Telit hired to write the Software manual, really didn&#8217;t write it that good at all, as there are missing information. If you open the software manual (page 142), you will see the following:</p>
<blockquote><p>&lt;CR&gt; &lt;LF&gt;<br />
Each message is terminated using Carriage Return (CR) Line Feed (LF) which is \r\n which is hex 0D 0A. Because \r\n are not printable ASCII characters, they are omitted from the example strings, but must be sent to terminate the message and cause the receiver to process that input message.</p></blockquote>
<p>The writer was so smart that he wrote that at the end of the software manual. Why don&#8217;t  you just write it at the beginning or even with the code!! And even if he said that they are omitted why don&#8217;t you just write them \r and \n as you wrote them here?? or CR and LF?? There are a million way to write it down on the manual. But seems that he forgot them while he was writing and said to just put it in the end of the manual instead of changing each and ever code. <img src='http://www.embed21.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>Also, the Telit technical support doesn&#8217;t reply on emails that people send. So I really don&#8217;t understand how did this company made this beautiful module, but their technical support is really bad.</p>
<p>Anyways, that is a big mistake that people really do, so don&#8217;t forget \r or \n. So in the end the code will look something like this when it is registering:</p>
<pre class="brush: c; ">

AT+CREG?\r
//Reply from the telit is:
AT+CREG?;\r\n
+CREG: 0,2\r\n
OK\r\n
</pre>
<p>and if it is registered it will look like this:</p>
<pre class="brush: c; ">

AT+CREG?\r
//Reply from the telit is:
AT+CREG?;\r\n
+CREG: 0,1\r\n
OK\r\n
</pre>
<p>When you get this response then you are able to start making a phone call, SMS, data call, GPRS, SMTP, FTP (you name it <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ). The easiest part that you can try and have a good kick start is making a phone call. Note, the phone call that we will do only gives us a ringing tone to the phone that we will call, but we will not be able to send voice from this module, as we haven&#8217;t did the voice circuit yet. What I mean by phone call is just to make another phone ring showing the phone number of the SIM in the module.</p>
<p>To make a simple phone call you need first to disable echo and set full functionality. After that we are ready to make a phone call.</p>
<pre class="brush: c; ">

ATE0\r                  // disable echo
AT+CFUN=1\r             // set full functionality
ATD0123023490\r         // call phone number: 0123023490
</pre>
<p>You need to remove the number &#8220;0123023490&#8243; and put your own cell phone number, and if you want to dial an international number just add the plus sign &#8220;+&#8221; before the number followed bt the code of the country then the phone number that you wish to dialAfter you send these commands to the module, the STATUS_LED will stop blinking and will be turned ON as you are making the call. After a couple of seconds, you will hear your cell phone ringing.</p>
<p>Now you have created your very own cellphone that can only give missed calls to a ceratin number COOL!</p>
<p>Ofcourse you can go further more and add a keypad to the PIC to dial phone numbers or add an LCD to show the replies from the module. For me, in the next series I will show you how to do all of this.</p>
<p>I hope this article was helpful, and if you have any questions please post it here.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=138</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>Level shifter using 74HC4050</title>
		<link>http://www.embed21.com/?p=125</link>
		<comments>http://www.embed21.com/?p=125#comments</comments>
		<pubDate>Sat, 09 Jan 2010 20:24:00 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[GSM/GPRS]]></category>
		<category><![CDATA[GM862]]></category>
		<category><![CDATA[PIC18F452]]></category>

		<guid isPermaLink="false">http://www.embed21.com/?p=125</guid>
		<description><![CDATA[Some people will say that we can reduce the voltage of the PIC18F452 or any type of PIC to 4.1v as it operates from 2.0V to 5.5V. But sadly this is not possible because to run the USART of the PIC18F452 it needs a minimum voltage of 4.9 volt (as far as I know). And [...]]]></description>
			<content:encoded><![CDATA[<p>Some people will say that we can reduce the voltage of the PIC18F452 or any type of PIC to 4.1v as it operates from 2.0V to 5.5V. But sadly this is not possible because to run the USART of the PIC18F452 it needs a minimum voltage of 4.9 volt (as far as I know). And we are not allowed to put the 5v input directly to the GM862 because this will ruin the whole module. What need now is a level shifter.</p>
<p>There are many techniques out there that enables you to make a level shifter. I used the 2 of 74HC4050 (Datasheet) and it worked fine with baudrate 19600. When you use these level shifter, one will be from low to high (4.0v -&gt;5.0v) and the other will be from high to low (5.0v -&gt; 4.0).</p>
<p>First we need to test everything is working fine before making any connections. In the IC that is used as a high to low converter; insert 5.0v as an input and check with a voltmeter the reading of the output. If its not 4.0v then you did something wrong with the connections and you need to revise the 74HC4050 connection. And do the vice versa to the second IC.</p>
<p>After the test, you are now ready to connect the PIC18F452.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=125</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Before connecting the PIC18F452</title>
		<link>http://www.embed21.com/?p=66</link>
		<comments>http://www.embed21.com/?p=66#comments</comments>
		<pubDate>Fri, 08 Jan 2010 20:58:17 +0000</pubDate>
		<dc:creator>Khaled Raed Sharaf</dc:creator>
				<category><![CDATA[GSM/GPRS]]></category>
		<category><![CDATA[blinking]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[GM862]]></category>
		<category><![CDATA[low ESR]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[ON_OFF]]></category>
		<category><![CDATA[STATUS_LED]]></category>
		<category><![CDATA[Telit]]></category>

		<guid isPermaLink="false">http://www.eg123.com/embedded/?p=66</guid>
		<description><![CDATA[Now we can start working with the GM862 module. Before connecting the microcontroller we have to make sure that the module itself turns on. Basically, what we will do is connect the following pins:
Pin 1,3,5,7 (Vbatt) &#8212;&#8212;to&#8212;&#8212;&#62; Vdd
Pin 2,4,8 (GND) &#8212;&#8212;to&#8212;&#8212;&#62; Ground
Pin 45 (RTS) &#8212;&#8212;to&#8212;&#8212;&#62; Ground
For us to debug this module, we will connect both [...]]]></description>
			<content:encoded><![CDATA[<p>Now we can start working with the GM862 module. Before connecting the microcontroller we have to make sure that the module itself turns on. Basically, what we will do is connect the following pins:<a href="http://www.embed21.com/wp-content/uploads/2010/01/1.jpg"><img class="alignright size-thumbnail wp-image-283" title="1" src="http://www.embed21.com/wp-content/uploads/2010/01/1-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p>Pin 1,3,5,7 (Vbatt) &#8212;&#8212;to&#8212;&#8212;&gt; Vdd</p>
<p>Pin 2,4,8 (GND) &#8212;&#8212;to&#8212;&#8212;&gt; Ground</p>
<p>Pin 45 (RTS) &#8212;&#8212;to&#8212;&#8212;&gt; Ground</p>
<p>For us to debug this module, we will connect both the STATUS_LED (Pin 39) and PWRMON (Pin 21). These are output pins used to make sure that the module turns ON, look at the schematic to see how we connect the LEDs on these pins. Also, we will connect a normally opened switch where one side is connected to the ground while the other side is connected to the module pin 17 (ON_OFF).</p>
<p>Note in the schematic there are two extra pins (pin 51 &amp; pin 52). These pins I added because when you use the Mikroelektronika board it will come with 52 pins (2 extra pins that are Not Connected &#8211; NC).</p>
<p><span id="more-66"></span><a href="http://www.embed21.com/wp-content/uploads/2010/01/flat_cable_assy_e14-l1.jpg"><img class="alignright size-thumbnail wp-image-86" title="flat_cable_assy_e14-l" src="http://www.embed21.com/wp-content/uploads/2010/01/flat_cable_assy_e14-l1-150x150.jpg" alt="" width="120" height="120" /></a>I have to mention something. If you are going to use a flexible flat cable to connect your breadboard to the module, believe me it is not that of a good idea at all. Because it seems that the flat cable doesn&#8217;t support the 2A spike current. So try to make sure that it does support up to 2A current and in my opinion and don&#8217;t even use the flat cable at all <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> . Yes, I am saying to not be neat especially in this part. Just solder some wires from the module to the breadboard, and when you are done with the whole design go to PCB manufacturing. As I said in my previous posts, that we are doing all this to make sure that the GM862 registers successfully to the network.</p>
<p>After you are finished with all the connection insert an SIM card in the module and this is what should happen:</p>
<ol>
<li>Press on the switch that is connected to the ON_OFF pin until both the STATUS_LED and the POWER LED turn ON. Normally the time that you should press on the switch is about 1 seconds. If you pressed on the switch and nothing turned ON, then double check your circuit as there is a wrong connection that you did.</li>
<li>Registering to the network. This is the part that will show if you successfully supplied the right voltage and current to the module. Now, the STATUS_LED will start blinking for some time. If the STATUS_LED blinks every second then this means it is registering, so after about 15 seconds (I think it depends on the signal strength, but I am not sure) the STATUS_LED will start blinking every 3 seconds. <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  Congratulations! If the STATUS_LED turned off after it blinked 6 to 9 times, then this means a power supply problem. So my advice is to double check that the power supply that you are using supports a 2A spike, if it doesn&#8217;t support it then try to make the power supply that I posted here. Also, make sure that you have added the 100uF tantalum capacitor. If you added all these, and still it turns off after 6 to 9 times flashing then try to increase the voltage CAREFULLY till it reaches 4.1v. After that it should work fine.</li>
<li>To make sure that the circuit is working fine, try to call the module (SIM phone number). When you hear a phone ring, then you will notice that the STATUS_LED will turn on instead of the 3 second flasher. Now I can assure you that everything is now connected right. And you are ready to have some real fun!</li>
</ol>
<p>Now we can say : &#8220;Nokia watch out we are coming&#8230; <img src='http://www.embed21.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> &#8221;</p>
<p>If things didn&#8217;t go as the above scenario, then try to revise all the connection one more time, and also double check step number 2. As the signal strength might be low; you can try to change the cellular operator with another one. If you have still problems please post your problems here and I will help you to solve it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.embed21.com/?feed=rss2&amp;p=66</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
	</channel>
</rss>
