<?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>Talk Computer &#187; Hardware</title>
	<atom:link href="http://www.talkcomputer.net/category/hardware/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.talkcomputer.net</link>
	<description>Tutorials, reviews, information, eveything for your technology needs!</description>
	<lastBuildDate>Thu, 02 Jul 2009 21:38:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Serial port monitoring</title>
		<link>http://www.talkcomputer.net/2009/05/serial-port-monitoring/</link>
		<comments>http://www.talkcomputer.net/2009/05/serial-port-monitoring/#comments</comments>
		<pubDate>Thu, 28 May 2009 00:00:09 +0000</pubDate>
		<dc:creator>Cedric</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Slider]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[baud rate]]></category>
		<category><![CDATA[COM]]></category>
		<category><![CDATA[com port]]></category>
		<category><![CDATA[commercial software]]></category>
		<category><![CDATA[data exchange]]></category>
		<category><![CDATA[Eltima]]></category>
		<category><![CDATA[engineering]]></category>
		<category><![CDATA[environment]]></category>
		<category><![CDATA[monitor]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[port reading]]></category>
		<category><![CDATA[reading data]]></category>
		<category><![CDATA[serial port monitoring]]></category>
		<category><![CDATA[serial ports]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://www.talkcomputer.net/?p=48</guid>
		<description><![CDATA[In engineering, when working with embedded devices, it is often required to be able to read data from the serial ports. In most cases, to simplify the coding process, whatever device that is throwing data is usually just dumping data without any form of hand shake. This leads to your computer not knowing there is [...]]]></description>
			<content:encoded><![CDATA[<p>In engineering, when working with embedded devices, it is often required to be able to read data from the serial ports. In most cases, to simplify the coding process, whatever device that is throwing data is usually just dumping data without any form of hand shake. This leads to your computer not knowing there is data coming from a certain COM port unless you specifically tell it to read from that port.</p>
<p>Reading data can quickly become an issue. You could write your own little tool to read data off a certain port but there is a tool out there that make&#8217;s it much easier. Needing a tool that does exactly that for work, I spent a while on the internet looking for free (as in beer) software without any luck, so I moved to trial based commercial software and found one very good application.</p>
<p>It&#8217;s made by Eltima Software and is called Serial port monitor 4.0 (how original). The application let&#8217;s you do much more than what I needed but the features I used are:<br />
Monitoring specific COM port and specifying it&#8217;s parameter (baud rate, databits, etc.)<br />
Seeing the data results in a table format<br />
Seeing the control data exchange</p>
<p>The tool performed very well in my environment and for the type of work I was doing. For my buying the software would not be an option since I only needed it for a few days but for it&#8217;s price, it might be a good buy if you need to do a lot of data monitoring.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.talkcomputer.net/2009/05/serial-port-monitoring/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compiling for embedded processors (part 1)</title>
		<link>http://www.talkcomputer.net/2009/05/compiling-for-embedded-processors-part-1/</link>
		<comments>http://www.talkcomputer.net/2009/05/compiling-for-embedded-processors-part-1/#comments</comments>
		<pubDate>Wed, 27 May 2009 02:00:23 +0000</pubDate>
		<dc:creator>Cedric</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[architecture]]></category>
		<category><![CDATA[compilers]]></category>
		<category><![CDATA[compiling]]></category>
		<category><![CDATA[development environment]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[embedded]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[linux distribution]]></category>
		<category><![CDATA[processor]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tarballs]]></category>
		<category><![CDATA[toolchain]]></category>

		<guid isPermaLink="false">http://www.talkcomputer.net/?p=35</guid>
		<description><![CDATA[In my current job, I came across some issues compiling for the Embedded ARM TS-7800. Because of certain library requirements and other limitations, compiling from the embedded device was not possible (although, in some cases it might). The only way to get around this issue is cross-compiling.
Cross-compiling is compiling for a different architecture than the [...]]]></description>
			<content:encoded><![CDATA[<p>In my current job, I came across some issues compiling for the <em>Embedded ARM TS-7800</em>. Because of certain library requirements and other limitations, compiling from the embedded device was not possible (although, in some cases it might). The only way to get around this issue is cross-compiling.</p>
<p>Cross-compiling is compiling for a different architecture than the one you are currently working on. If it&#8217;s your first time doing that kind of work, it can rapidly become frustrating since there is no &#8220;silver bullet&#8221; method. In this post, I will try to explain a method that should work for most embedded device provided that the manufacturer has a <em>toolchain</em> readily available.</p>
<p><strong>What you will need:</strong></p>
<ul>
<li>A computer with a Linux distribution (I used Fedora 7 [it's old but it worked] )</li>
<li>A compiler and the necessary libraries</li>
<li>The <em>toolchain</em> for the processor</li>
<li>Not necessary but will make you  life easier: a development environment (such as Eclipse)</li>
</ul>
<p>Let&#8217;s take a look at the 4 items previously listed. First, the Linux distribution; it&#8217;s not 100% required but it will make your life a lot easier since most <em>toolchains</em> (patience, we&#8217;ll get to what it is soon) are compiled for Linux.</p>
<p>The compiler that is most often used is GCC, a great compiler, free (<em>free as in speech</em> and <em>free as in beer</em>) and readily available of all (or almost) Linux distributions. You can get the Tarballs off their website at http://gcc.gnu.org/ or just use the package manager in you environment. I would suggest installing the required libraries for the code you are compiling at this point if it&#8217;s not already done.</p>
<p><em>Toolchains</em>, what are they? <em>Toolchains</em> are simply a set of compilers and libraries build to run on a certain architecture and compile for another. You will usually be able to get them from the manufacturer&#8217;s website or from the community. You will most likely find them packaged in Tarballs.</p>
<p>Finally, the development environment is useful because it let&#8217;s you consolidate and organize your code into neat folders and let&#8217;s you easily manage build options. With some addons, Eclipse will even let you sync a project directly from a SVN!</p>
<p><strong>Architecture, what&#8217;s that?</strong></p>
<p>Throughout this article, I will often refer to the ARM architecture and the x86 (also known as i386 or i486 or i686). The architecture simply refers to the CPU &#8220;design&#8221; and it&#8217;s a quick way of knowing what compiled code will work with which CPUs. The differences between each architecture and the reason for such differences is way beyond the scope of this article. Just keep in mind that when you select a compiler, an application or Linux distribution for you computer, you&#8217;ll probably be looking for the i386 (most Linux distributions will but different versions for i386 and i686, newer PCs run with i386) or the x86_64 (or x64) if you have a 64 bit processor. Note that i386 will work on 64 bit processor the the opposite is not true!</p>
<p><strong>Let&#8217;s get started</strong></p>
<p>First let&#8217;s assume that you have you environment set up, that you have some basic knowledge of Linux and that your code compiles on you current processor. Let&#8217;s also assume you&#8217;re not using some obscure libraries that you don&#8217;t have the source code for. Finally, I&#8217;ll assume that you have <em>ROOT</em> privileges on your system.</p>
<p>First step of the cross-compiling process is to locate the <em>toolchain</em> and download it to your home directory.</p>
<p>Next step is to extract it. If it&#8217;s a tarball, just execute the following command:</p>
<pre>tar -xzf crosstool.tar</pre>
<p>Once you have the content of the <em>toolchain</em> in a folder somewhere, we need to make it usable. This is where most people go their own ways. I found a very simple and effective way of using the <em>toolchain</em> and I&#8217;m sharing it because I think the other methods are more trouble than they are worth.</p>
<p>To get the <em>toolchain</em> working, let&#8217;s start by making a backup or our compilers. Execute the following commands in the console:</p>
<pre>cp /usr/bin/gcc /usr/bin/gcc.bak</pre>
<pre>cp /usr/bin/g++ /usr/bin/g++.bak</pre>
<p>Now that we have the backup done, we&#8217;ll remove the originals by running the following commands:</p>
<pre>rm /usr/bin/gcc

rm /usr/bin/g++</pre>
<p>And finally, we need a way of letting the OS think that we still have the compilers there, so we&#8217;ll add two symbolic links that will point to the <em>toolchain&#8217;s</em> compilers</p>
<pre>ln -s /path/to/crosstool/bin/crosstool-name-gcc /usr/bin/gcc      
ex: ln -s /home/test/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-gcc /usr/bin/gcc

ln -s /path/to/crosstool/bin/crosstool-name-gpp /usr/bin/gpp               
ex: ln -s /home/test/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-gpp /usr/bin/gpp</pre>
<p>Now that, we have some shinny new compilers, let&#8217;s test them with something simple. We&#8217;ll make a short &#8220;Hello World&#8221; program and compile it for your embedded device architecture. Type into a new file somewhere:</p>
<pre>#include &lt;stdio.h&gt;

int main(void) {

       printf("Hello World!\n");

       return 0;

}</pre>
<p>and save it as <em>hello.c.</em></p>
<p>To compile, you can simply type the following command (assuming that you are executing that command from the same folder that contains the file):</p>
<pre>gcc hello.c -o hello.arm</pre>
<p>You should look for errors here, if it succeeds, you should not get anything back and you will be able to see the file in your current folder.</p>
<p>Finally, to confirm that you have a working environment, we will look at the file properties by executing the command:</p>
<pre>file hello.arm</pre>
<p>if the output specifies the embedded device&#8217;s processor, you should be fine. It should look like:</p>
<pre>hello.arm: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.4.17, not stripped</pre>
<p>In part two of this tutorial, we will look at getting the original compilers back in and some advanced method for larger application compiling. Even though I am not an expert on the subjet, feel free to post your issues and questions and I will do my best to find and provide answers!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.talkcomputer.net/2009/05/compiling-for-embedded-processors-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blog status update</title>
		<link>http://www.talkcomputer.net/2009/05/blog-status-update/</link>
		<comments>http://www.talkcomputer.net/2009/05/blog-status-update/#comments</comments>
		<pubDate>Sun, 24 May 2009 01:22:03 +0000</pubDate>
		<dc:creator>Cedric</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[status]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.talkcomputer.net/?p=30</guid>
		<description><![CDATA[Just a quick update on the status of the blog. I might not post as much as I would like because I&#8217;m doing some renovation work but I&#8217;ll try my best to add a post every two days or so!
]]></description>
			<content:encoded><![CDATA[<p>Just a quick update on the status of the blog. I might not post as much as I would like because I&#8217;m doing some renovation work but I&#8217;ll try my best to add a post every two days or so!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.talkcomputer.net/2009/05/blog-status-update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Logitech diNovo Keyboard Review</title>
		<link>http://www.talkcomputer.net/2009/05/logitech-dinovo-keyboard-review/</link>
		<comments>http://www.talkcomputer.net/2009/05/logitech-dinovo-keyboard-review/#comments</comments>
		<pubDate>Sun, 24 May 2009 01:13:26 +0000</pubDate>
		<dc:creator>Cedric</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[brushed aluminum]]></category>
		<category><![CDATA[dinovo edge]]></category>
		<category><![CDATA[finger marks]]></category>
		<category><![CDATA[home theatre system]]></category>
		<category><![CDATA[ibm lenovo]]></category>
		<category><![CDATA[keyboard]]></category>
		<category><![CDATA[keyboard feature]]></category>
		<category><![CDATA[laptop keyboard]]></category>
		<category><![CDATA[logitech]]></category>
		<category><![CDATA[logitech dinovo keyboard]]></category>
		<category><![CDATA[media center edition]]></category>
		<category><![CDATA[numpad]]></category>
		<category><![CDATA[palm rest]]></category>
		<category><![CDATA[sensitive volume control]]></category>
		<category><![CDATA[volume settings]]></category>
		<category><![CDATA[windows xp media]]></category>
		<category><![CDATA[windows xp media center]]></category>
		<category><![CDATA[windows xp media center edition]]></category>

		<guid isPermaLink="false">http://www.talkcomputer.net/?p=19</guid>
		<description><![CDATA[The Logitech diNovo keyboard is one of the very high end keyboards in Logitech’s line of product. It is feature packed but not a keyboard that is designed for everyone.]]></description>
			<content:encoded><![CDATA[<p>The Logitech diNovo keyboard is one of the very high end keyboards in Logitech’s line of product. It is feature packed but not a keyboard that is designed for everyone.</p>
<h2>Design</h2>
<p>The design of this keyboard is unusual although it is very comfortable to work with. It features a small touchpad on the right side and touch sensitive volume control above it. It also has a brushed aluminum palm rest which keeps your hands somewhat cool even after a few hours of work. The keyboard is slim, measuring less than half an inch at the thickest point. Unfortunately, Logitech thought that having a glossy contour was a great idea but I can say that after just a few hours of work, it’s already full of finger marks, especially below the spacebar.</p>
<h2>Keys</h2>
<p>The keys on this keyboard make me think of those great IBM/Lenovo laptop keyboard. They are very sturdy and they feel well balanced. The only thing I can find to complain about is having the bottom row of keys rounded. This can get a bit annoying and takes a few days to get used to but won’t really affect your typing.</p>
<h2>Features</h2>
<p>Like I mentioned earlier, the keyboard feature a nice touchpad, in the form of a small disk, on the right side which is a great feature if you are going to use this keyboard for a home theatre system. On the other hand, having a touchpad means that you are losing the numpad For some, like myself, it’s not a big deal and we can live without it but if you are doing a lot of Excel and similar work, you may want to reconsider. The “touchdisk” has a scroll up/down and side scroll that work by moving your finger around the disk.</p>
<p>The keyboard also has quite a few multi-media keys. There’s the volume control above the touchpad which is touch sensitive and lights up when you slide your fingers over it to give you an idea of the current volume settings. Above it, you have a <em>Media Center</em> key that would be used to launch <em>Media Center</em> if you are on <em>Windows Vista</em> or <em>Windows XP Media Center Edition</em>; otherwise, it launches <em>Windows Media Player</em>, by default. Above the function keys, you have shortcut keys glowing when you hold the “Fn” key down. Most of these will use either your Windows settings or the software settings to start your email software, messaging, browser, etc. You will also find the “Play”, “Stop”, “Previous” and “Next” buttons. The last 5 “F” keys feature 5 programmable functions keys when you hold the “Fn” key.</p>
<p>Finally, on the right side, you will see the zoom-in/zoom-out, zoom reset and sleep button. These can come handy if you want to quickly zoom-in on a document while typing.</p>
<h2>Software and connectivity</h2>
<p>In my opinion, the software is great. It is very functional and you can easily find all the information and settings in a matter of seconds. The software gives you the opportunity to change a lot of setting including the behaviour of the “Fn” keys. In terms of connectivity, the device uses Bluetooth and comes bundled with an adapted in the event that you don’t have it already in your computer. The reception is great, you can be far enough and the computer still picks-up the signal very clearly.</p>
<h2>Battery and other</h2>
<p>The battery life for the keyboard is awesome. With only 90% of the battery, you will easily last a month if not two. In the rare events that you need to charge the keyboard, you simply drop it on the charging base for an hour or two and your back to 90%. Again, with the charging base, Logitech thought that it was a great idea to make everything glossy. This means that you will have a few finger marks on it too. To fight those marks, Logitech was nice enough to bundle a cleaning cloth that works well enough.</p>
<h2>Conclusion</h2>
<p>This keyboard is a joy to work with. It’s only disadvantages are that it does not have a numpad which for some can be very annoying. Another problem with the diNovo is the glossy casing which is a finger mark magnet. On the positive side, the keys are sturdy and the aluminum palm rest keeps your hands cool.</p>
<h2>Pros</h2>
<ul>
<li>Long battery life</li>
<li>Sturdy and well balanced keys</li>
<li>Brushed aluminum palm rest</li>
<li>Feature packed keyboard and software</li>
<li>Integrated touchpad</li>
</ul>
<h2>Cons</h2>
<ul>
<li>Glossy finish</li>
<li>Touchpad leaves no room for a numpad</li>
</ul>
<h2>Rating</h2>
<h3>8/10</h3>
]]></content:encoded>
			<wfw:commentRss>http://www.talkcomputer.net/2009/05/logitech-dinovo-keyboard-review/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Coming Soon!</title>
		<link>http://www.talkcomputer.net/2009/05/coming-soon/</link>
		<comments>http://www.talkcomputer.net/2009/05/coming-soon/#comments</comments>
		<pubDate>Sun, 17 May 2009 03:39:37 +0000</pubDate>
		<dc:creator>Cedric</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Soon]]></category>

		<guid isPermaLink="false">http://www.talkcomputer.net/?p=3</guid>
		<description><![CDATA[Hey everyone,
It won&#8217;t be long until you see some content! Come back next week and I should have some stuff up for you to read!
You will probably also see some changes in the design and stuff but don&#8217;t be alarmed, everything should be stable by next saturday!
]]></description>
			<content:encoded><![CDATA[<p>Hey everyone,</p>
<p>It won&#8217;t be long until you see some content! Come back next week and I should have some stuff up for you to read!</p>
<p>You will probably also see some changes in the design and stuff but don&#8217;t be alarmed, everything should be stable by next saturday!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.talkcomputer.net/2009/05/coming-soon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
