<?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>Key Tech Blog &#187; component selection</title>
	<atom:link href="http://www.keytechinc.com/blog/index.php/tag/component-selection/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.keytechinc.com/blog</link>
	<description>Key Tech&#039;s take on Engineering, the World, and everything else.</description>
	<lastBuildDate>Mon, 06 Feb 2012 20:55:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>When life gives you lemons, make a lemon battery!</title>
		<link>http://www.keytechinc.com/blog/index.php/2010/lemons-make-a-battery/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2010/lemons-make-a-battery/#comments</comments>
		<pubDate>Wed, 10 Nov 2010 16:20:13 +0000</pubDate>
		<dc:creator>Jessica Fisher</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Product Design]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[obstacles]]></category>
		<category><![CDATA[resource]]></category>
		<category><![CDATA[risk]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=780</guid>
		<description><![CDATA[Inside most kitchens, a lemon leads a normal life, being integrated into a delicious dish or drink.  But many science students have found in their classroom experiments that a lemon is no mere fruit.]]></description>
			<content:encoded><![CDATA[<p>Inside most kitchens, a lemon leads a normal life, being integrated into a delicious dish or drink.  But many science students have found in their classroom experiments that a lemon is no mere fruit.</p>
<p style="text-align: center;"><img class="size-medium wp-image-789 aligncenter" title="lemon" src="http://www.keytechinc.com/blog/wp-content/uploads/2010/11/lemon-300x200.jpg" alt="" width="300" height="200" /></p>
<p style="text-align: left;">When connected to two dissimilar metals (such as copper and zinc), the lemon transforms into a battery, producing a small voltage potential.  A new found use of lemons is discovered, much to the delight of kitchen scientists everywhere.  For us here at Key Tech, it illustrates the positive use of a usually avoided event: Galvanic corrosion.</p>
<p><strong> The process: break it down</strong></p>
<p>Galvanic corrosion occurs when dissimilar metals are in the presence of an electrolyte, such as salt water (or citric acid in the case of lemons).  One metal forms the anode and the other metal forms the cathode. The anode is more active (less corrosion resistant) and the cathode is less active (more corrosion resistant). When they are electrically connected, a current is produced which causes a change in the corrosion properties of the metals:</p>
<ul>
<li>The more active <strong>anode</strong> corrodes faster than it      would by itself</li>
<li>The less active <strong>cathode</strong> corrodes slower than it      would by itself</li>
</ul>
<p>These metals must be in electrical contact and they must be exposed to an electrolyte. This type of corrosion will not occur if the metals are completely dry or electrically insulated from each other.<strong> </strong>Galvanic corrosion is a common enemy of ship builders, but this destructive process is of interest to any designer where metals and alloys interface, such as at fastener locations.  Material choice as well as surfacing options become critical at these junctions for the life and structural integrity of the system.</p>
<p><strong>Welcome to the Galvanic Series (in seawater)</strong></p>
<p>For those of us who love tables, galvanic series were developed to list metals and alloys based on their corrosion potential in a specific electrolyte.  In seawater, these materials are listed from most cathodic (inactive/resistant to corrosion) to most anodic (active/ease of corrosion).  The further apart the metals/alloys are in a particular series (thus the most dissimilar they are), the higher the risk of galvanic corrosion.</p>
<p>Least Active (Cathodic)<a href="http://www.keytechinc.com/blog/wp-content/uploads/2010/11/Rusty-Bolts.jpg" rel="lightbox[780]"><img class="size-medium wp-image-790 alignright" title="Rusty Bolts" src="http://www.keytechinc.com/blog/wp-content/uploads/2010/11/Rusty-Bolts-300x224.jpg" alt="" width="300" height="224" /></a></p>
<ul>
<li>Platinum, Gold, Graphite, Titanium, Silver</li>
<li>Stainless Steel (passive)</li>
<li>Brass/Bronze</li>
<li>Stainless Steel (active)</li>
<li>Chrome</li>
<li>Nickel</li>
<li>Steel</li>
<li>Aluminum</li>
<li>Zinc</li>
<li>Magnesium</li>
</ul>
<p>Most Active (Anodic)</p>
<p><strong>How to prevent or minimize galvanic corrosion</strong></p>
<ul>
<li>Choose metals close together on the galvanic series for      mating parts and fasteners.</li>
<li>Never place a small area of active metal on a large      area of inactive metal (e.g. a zinc-plated fastener on stainless steel      part).</li>
<li>Use coatings or other means to prevent electrical      contact between parts:
<ul>
<li>Anodize</li>
<li>Chromate conversion (iridite)</li>
<li>Phosphate</li>
<li>Electroless nickel</li>
<li>Paint</li>
<li>Lubricants</li>
<li>Insulating tape</li>
<li>Non-absorbent washers</li>
</ul>
</li>
<li>Use a sacrificial anode (e.g. galvanized steel)</li>
</ul>
<p><strong>Rules of Thumb: Know Your Environment</strong></p>
<p>Where the metallic components will reside should be considered when designing your overall system.  The Anodic Index can be found <a title="here" href="http://corrosion-doctors.org/Definitions/galvanic-series.htm" target="_blank">here</a><a title="http://corrosion-doctors.org/Definitions/galvanic-series.htm" href="http://corrosion-doctors.org/Definitions/galvanic-series.htm"></a>.  These anodic index values provide the comparison needed when deciding what type of fastener material to use in your designs to prevent galvanic corrosion.  The basic rules of thumb are (taken from corrosion-doctors.org):</p>
<ul>
<li>Harsh Environments (outdoors, high temp, high humidity): the difference in Anodic Index      should be less than 0.15V</li>
<li>Normal Environments (storage warehouses or non-temperature and humidity controlled      environments): the difference in Anodic Index should be less than 0.25V</li>
<li>Controlled Environments (temp and humidity controlled): up to 0.50V difference in Anodic Index can be tolerated<a href="http://www.keytechinc.com/blog/wp-content/uploads/2010/11/Rusty-Boat.jpg" rel="lightbox[780]"><img class="size-medium wp-image-791 aligncenter" title="Rusty Boat" src="http://www.keytechinc.com/blog/wp-content/uploads/2010/11/Rusty-Boat-300x225.jpg" alt="" width="300" height="225" /></a></li>
</ul>
<p>A couple great resources for more detailed information on this subject are the ASM Metals Handbook (Vol 5 and 13) and “Handbook of <a href="http://corrosion-doctors.org/Books/Corrosion-Principles.htm">Corrosion Engineering</a>” by <a href="http://corrosion-doctors.org/KTS/roberge.htm" target="_top">Pierre R. Roberge</a> (2000).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2010/lemons-make-a-battery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Making it all wireless</title>
		<link>http://www.keytechinc.com/blog/index.php/2010/making-it-all-wireless/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2010/making-it-all-wireless/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 12:05:38 +0000</pubDate>
		<dc:creator>Chad Schneider</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Product Design]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=768</guid>
		<description><![CDATA[As you've probably noticed, wireless products are extremely popular. So, what is the difference between one wireless technology and another? Here's a really rough breakdown.]]></description>
			<content:encoded><![CDATA[<p>As you&#8217;ve probably noticed, wireless products are extremely popular. Cordless phones and wireless remote controls have been around for decades, but now it seems that anyone over 12 years old has a mobile phone or wireless laptop hanging around. So many products have become wireless that the battery manufacturers must be jumping for joy and landing in piles of money. So, what is the difference between one wireless technology and another? Here&#8217;s a really rough breakdown.</p>
<h3><strong><img class="alignright size-medium wp-image-770" title="Wireless communication" src="http://www.keytechinc.com/blog/wp-content/uploads/2010/10/iStock_000006756129XSmall-300x186.jpg" alt="" width="240" height="149" />Wireless Protocols</strong></h3>
<p><em>Wi-Fi / 802.11 a, b, g, n / Wireless Ethernet</em></p>
<p>802.11x uses unregulated radio signals to transmit large amounts of data quickly. It is very popular for home and business computer networks and can be secured using various techniques including complex encryption, making it a very good method for portable devices to reach the internet. The protocol is mesh-networking capable (messages hopping along several intermediate nodes to reach a destination as opposed to point-to-point). The radio signals utilized for this technology penetrate walls, which is useful when line-of-sight communication is not possible.</p>
<p>From a design standpoint, however, this is a more complicated solution than other wireless protocols. The associated electronics are complex and draw a lot of power, so wi-fi can be expensive and battery intensive for a handheld device.</p>
<p>Table 1 Different flavors of the 802.11 wireless protocol</p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="47" valign="top">802.11a</td>
<td width="72" valign="top">54 Mbps</td>
<td width="80" valign="top">5 Mhz</td>
<td width="216" valign="top">High cost, low range</td>
</tr>
<tr>
<td width="47" valign="top">802.11b</td>
<td width="72" valign="top">11 Mbps</td>
<td width="80" valign="top">2.4 Mhz</td>
<td width="216" valign="top">Good range, cheap, and popular</td>
</tr>
<tr>
<td width="47" valign="top">802.11g</td>
<td width="72" valign="top">54 Mbps</td>
<td width="80" valign="top">2.4 Mhz</td>
<td width="216" valign="top">Great range, faster</td>
</tr>
<tr>
<td width="47" valign="top">802.11n</td>
<td width="72" valign="top">100 Mbps</td>
<td width="80" valign="top">2.4 &amp; 5 Mhz</td>
<td width="216" valign="top">Best range, fastest, lowest signal interference</td>
</tr>
</tbody>
</table>
<p><em>Proprietary (e.g. Radiotronix Wi232)</em></p>
<p>Some companies create their own radio-frequency (RF) wireless protocols. Lots of point-to-point “garage door” protocols, for example. This is because it is very easy from a design standpoint.</p>
<ul>
<li>Point-to-point, not mesh</li>
<li>Low power</li>
<li>Long range</li>
<li>Low data rate</li>
</ul>
<p><em>ZigBee</em></p>
<p>ZigBee is an open protocol used to create a network of devices that can communicate with each other. The premise is similar to wi-fi, but it has optimized performance for different applications such as battery-powered handhelds. Example products are building controls and sensors. Performance features include</p>
<ul>
<li>Extremely low data rate (for individual sensors or switches)</li>
<li>Low power</li>
<li>Long range (~100 yards)</li>
<li>Mesh networking capable (transmitting data through various nodes to the central control unit which greatly extends the range of a network)</li>
</ul>
<p><em>Bluetooth</em></p>
<p>Bluetooth is an open radio-frequency protocol for transmitting data over short distances, generally less than 30 feet, although the protocol can be used for longer ranges with higher power output. It is most useful for connecting multiple devices together such as laptops with mice, remote controls, and mobile phones.   Bluetooth is designed as a low configuration, easy to use option.  The newest revisions of Bluetooth are also opening much higher speed data transmissions and even lower power usage.</p>
<p><em>900Mhz, 2.4Ghz</em></p>
<p>These are just frequencies, but people might call their protocol as such to identify that they use RF signals instead of infrared or that they are not part of the wi-fi platform.</p>
<ul>
<li>900 Mhz is old school, longer range / lower      data rate.</li>
<li>2.4 Ghz is new school, shorter range / higher      data rate / may interfere with nearby wi-fi networks</li>
</ul>
<p><em>Infrared (IR or IrDA)</em></p>
<p>IR is most popular with remote controls because it is cheap and easy to implement. This is a line-of-sight technology, meaning that the infrared light emitted from the remote must travel to the sensor to transmit the command. It can be reflected around a room, but not from room to room. For this reason, it is also used in security systems, position sensors, and level switches to detect localized movement via interference with the line of sight.</p>
<p>IrDA was once used to transmit data on Palm Pilots and laptops for a time, but it has a very low data rate compared to current competitive technologies and a very short range.</p>
<h2>What makes wireless cheap or expensive?</h2>
<p>Cheap to develop</p>
<ul>
<li>Point-to-point,      one-way, garage door opener.</li>
<li>Messages      sent are simple, and all of the same type and purpose. A layman could      easily define each message in English in a spec.</li>
<li>A network      that doesn’t need to be “managed” (think about devices joining and      leaving, think about multiple networks in same air space, think about      distinguishing IDs of senders and receivers)</li>
</ul>
<p>Expensive</p>
<ul>
<li>Mesh      networking</li>
<li>Network      reconfigurable (by user or automatic – both a pain.)</li>
<li>Variety      of message types and purposes</li>
<li>Two-way      communication or authentication</li>
<li>Pushing      the limits of range or power. Or, lack of line-of-sight.</li>
<li>Application      is sensitive to interference or garbled messages</li>
<li>High      speed data access, or continuous network access</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2010/making-it-all-wireless/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Real-time Operating Systems (RTOS)</title>
		<link>http://www.keytechinc.com/blog/index.php/2010/real-time-operating-systems-rtos/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2010/real-time-operating-systems-rtos/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 11:14:08 +0000</pubDate>
		<dc:creator>Dave Hershey</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Product Design]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[product development]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=722</guid>
		<description><![CDATA[What is an embedded Real Time Operating System (RTOS) and how can you best utilize it for your next development project?]]></description>
			<content:encoded><![CDATA[<p>RTOS – another fancy buzzword used by marketing to sell products, or a powerful software building block that reduces development effort and decreases time to market?  RTOSes (<strong>R</strong>eal <strong>T</strong>ime <strong>O</strong>perating <strong>S</strong>ystems), sometimes referred to as embedded operating systems, are becoming more commonplace.  The major difference between an RTOS and a general purpose OS (i.e. Windows, Mac OS X, Linux) is that an RTOS exhibits <em>deterministic timing</em>.  In a nutshell, this means that the execution times of operating system services are documented so that developers can guarantee timing requirements for the system.</p>
<p>Based on the phrasing of the opening question, you’ve probably already guessed the answer.  An RTOS provides a host of benefits to embedded developers with a very reasonable memory footprint.  At Key Tech, we find that these benefits generally justify the cost of an RTOS, particularly for medium and large-scale software projects.</p>
<p><strong>Drivers &amp; Software Stacks</strong></p>
<p>Most RTOS implementations ship with board support packages (BSPs) for supported microcontrollers.  BSPs provide low-level software support for most microcontroller functionality, which immediately benefits software schedule by cutting out the development and debug time typically spent on driver development.</p>
<p>Some RTOS vendors also provide software stacks for complex functionality, such as USB or Ethernet.  These also cut out a lot of development and debug cost/time that would otherwise be spent on these modules.  Most vendors today offer a la carte peripheral options so that the RTOS selection can be optimized for performance and cost.</p>
<p><strong>Multitasking</strong></p>
<p>Perhaps the most beneficial feature of modern day operating systems is the ability to run multiple programs at once, or at least give that appearance (depending on the underlying hardware architecture).  RTOSes are no exception – they permit developers to easily separate the software into logical units, increasing the readability and maintainability, and improving the overall efficiency of the development effort.</p>
<p>Future feature additions also become easier – the developers can often write a new software module and execute it as a separate process in the OS.  This directly translates to reduced cost and schedule.</p>
<p><strong>Safety &amp; Security</strong></p>
<p>Software bugs are feared for their ability to crash the entire device, particularly in mission-critical and safety-critical situations.  Typically, an RTOS includes a heavily tested and validated kernel (the core of the OS) that helps mitigate the effect of software failures by limiting their scope and preventing them from affecting the rest of the software.  Several vendors provide RTOSes certified for military, avionics, and medical applications, such as Green Hills, Micrium, Wind River, Mentor Graphics, and QNX.  Getting FDA 510(k) approval with an RTOS is becoming more common, and vendors can often provide documentation and procedures to assist you with that effort.</p>
<p><strong>Selection</strong></p>
<p>RTOS selection can be an overwhelming process, to say the least.  What level of certification do you need?  Does your application require a kernel optimized for speed, size, or something in between?  Do you need the highest level of security, or do you want something a little more flexible to speed up software development?  Based on your design requirements, vendors and designers can work together to select the best RTOS for your application.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2010/real-time-operating-systems-rtos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HSA&#8217;s and medical devices</title>
		<link>http://www.keytechinc.com/blog/index.php/2010/hsas-and-medical-devices/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2010/hsas-and-medical-devices/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 13:25:14 +0000</pubDate>
		<dc:creator>Chad Schneider</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Product Design]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[innovation]]></category>
		<category><![CDATA[medical devices]]></category>
		<category><![CDATA[specification]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=718</guid>
		<description><![CDATA[Has the Health Savings Account affected consumer's spending habits? Is that affecting the design specification for consumer medical devices?]]></description>
			<content:encoded><![CDATA[<p>My dentist has been recommending I purchase an electric toothbrush, and I recently relented. I&#8217;ve never used one before because they seemed overly complicated for brushing one&#8217;s teeth, and this one is particularly &#8220;whiz-bang&#8221;. For an MSRP of $160, it has an LCD battery meter on the brush, a wireless recharging base, and a secondary wireless LCD with real-time communication with the brush. $160 is significantly more than the $3 you spend on a regular, old fashioned toothbrush, which got me thinking about why a company would design such an expensive toothbrush.</p>
<p><strong>Health Savings Accounts</strong></p>
<p>The Health Savings Account (HSA) is a rather new invention that pairs a high-deductible insurance plan with a pre-tax savings plan for medical expenses. The HSA covers more than just deductible-using doctor&#8217;s visits. One can also use it to buy vitamins, toothbrushes, over-the-counter medication, and more, making them pre-tax expenditures. And, money that isn&#8217;t used stays in the HSA where it can be rolled into an investment account for retirement. Has this new financial innovation impacted the development of medical devices?</p>
<p><strong>Non-reimbursable medical expenses </strong></p>
<p>So, how does having an HSA change one&#8217;s purchasing decisions? As an HSA user myself, I find that I&#8217;m less likely to consider the long-term implications of spending a few extra dollars on medical expenses, which is precisely the opposite of what the HSA is supposed to accomplish. I know I&#8217;m supposed to be asking about the costs of medical products and services, but it almost feels inappropriate. So, I asked Ben Lane whether he found it was any different for his family. Is his family asking how much a test costs or limiting their doctor visits due to the expense?</p>
<blockquote><p>&#8220;I have been living in the traditional culture of insurance for so long that I just continue to operate in that same mode. That means I pretty much do what the doctor says without much discussion of cost. Ultimately, I want my family to be healthy, and I don’t want costs to impact my medical decisions, even though maybe they should. In addition, it’s very difficult and time consuming to be informed about medical costs. It’s not like I can comparison shop very easily. Seems like this needs to change and maybe it already is.&#8221;</p></blockquote>
<p>Ben tends to agree with me. In the end, I can&#8217;t use the money to buy the kids video games (okay, they&#8217;re for me), and I haven&#8217;t saved enough to be able to invest the money, yet. So, perhaps my tolerance for purchasing more expensive medical devices, like this toothbrush, is higher than it would be for, say, a $300 24-volt drill. However, I think I lack the psychological background or introspective skill to really understand my sub-conscious mind.</p>
<p><strong>How this affects device design</strong></p>
<p>Whatever price point the market will bear has a major impact on the performance and features of a device. Metal gears, LCD&#8217;s, and wireless charging stations all cost money, money that has to be added to the retail price. If consumers are willing to spend more on a medical device you&#8217;re designing because they&#8217;ll be making that purchase via an HSA, that&#8217;s going to affect the design specification.</p>
<p>Am I off base? If you&#8217;re using an HSA and/or designing medical devices, I&#8217;d love to hear how this new innovation has affected your spending habits and design constraints.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2010/hsas-and-medical-devices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Collecting very fine volumetric accuracy data</title>
		<link>http://www.keytechinc.com/blog/index.php/2010/collecting-very-fine-volumetric-accuracy-data/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2010/collecting-very-fine-volumetric-accuracy-data/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 11:58:08 +0000</pubDate>
		<dc:creator>Chad Schneider</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Microfluidics]]></category>
		<category><![CDATA[Problem Solving]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[innovation]]></category>
		<category><![CDATA[medical devices]]></category>
		<category><![CDATA[obstacles]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[resource]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=637</guid>
		<description><![CDATA[As part of the V&#038;V test procedure, we designed a gravimetric means to characterize the volumetric and flow-rate accuracy of a couple of precision injection instruments. With this setup, we're able to achieve measurement resolution of just 0.1 milligram and reduced the error due to water evaporation to 40 times better than using a mineral oil emulsion.]]></description>
			<content:encoded><![CDATA[<p>As part of the V&amp;V (validation and verification) test procedure we developed a while ago, we designed a gravimetric means to characterize the volumetric and flow-rate accuracy of a couple of precision injection instruments (which I thought I’d share with you today). With this setup, some programming, and a fairly precise scale, we can automatically collect data during an injection to determine if the device meets the accuracy tolerances from the specification. We&#8217;re able to achieve measurement resolution of just 0.1 milligram and reduced the error due to water evaporation to 40 times better than using a mineral oil emulsion.</p>
<p><strong><a href="http://www.keytechinc.com/blog/wp-content/uploads/2010/06/Gravimetric.jpg" rel="lightbox[637]"><img class="alignright size-medium wp-image-638" title="Gravimetric" src="http://www.keytechinc.com/blog/wp-content/uploads/2010/06/Gravimetric-185x300.jpg" alt="" width="185" height="300" /></a>The Scale</strong></p>
<p>We chose an Acculab 210.4 scale because it was accurate enough (.0001 gram resolution, which is about a tenth of a microliter for room temperature water) and because it has a serial interface that we can call from Visual Basic to easily collect data and put into a spreadsheet. The data stream is limited to about 8Hz, but it was fast enough for our purposes.</p>
<p>Scales with more resolution often come with damping mechanisms to keep them stable. Although the glass cover keeps the air movement down, this one didn’t have a means to damp vibrations, so we needed to isolate the scale ourselves. We used a small table with some rubber feet as the foundation. Then we used one of those heavy engineering textbooks we have so many of on some thick foam and put the scale on top. Considerate use of flexible beams, soft materials, and masses meant the scale was rock-steady without any software averaging required.</p>
<p><strong>The Fluid Connection</strong></p>
<p>To get the fluid onto the scale, we attached tubing with a luer-lock fitting to a long needle inserted into the scale cover through a hole in the top plate and held in place with a thumb-screw. By using a needle instead of just inserting the tubing into the container, we eliminated any contact with the container or scale. we found that any such contact threw the scale out of whack, especially when the fluid flowed through the tubing with momentum.</p>
<p>The question came up as to whether the needle should be above the water-level or below it. If the needle is below the water-level, surface tension on the needle can reduce the weight of the water. However, if the needle is above the water-level, a drop can form at the tip instead of depositing the small volume onto the scale. We needed fine-resolution flow-rate data, so we opted to ignore the surface tension, which we found to be below the resolution of the scale.</p>
<p><strong>Evaporation of the Water</strong></p>
<p>Over the duration of a test, water will evaporate. The rate is dependent upon temperature, relative humidity, and the surface area of the container. Many suggest adding mineral oil to the water to create a barrier layer to supposedly eliminate evaporation of the water. Data showed that the oil layer did reduce the rate of evaporation (from 0.13 g/hr to 0.08 g/hr), although the oil ruined the plastic connections of the tubing by making them brittle and causing them to leak and break. Instead, we drilled a 1/4” hole into the cap of the container for the needle to fit through, which dropped the rate of evaporation by two orders of magnitude. We collected data for various configurations of the water, oil, and lid and plotted them below. So, without using any oil, we were able to drop the rate of evaporation from 0.127 g/hr to 0.002 g/hr.</p>
<p style="text-align: center;"><a href="http://www.keytechinc.com/blog/wp-content/uploads/2010/06/Evaporation_of_Water.jpg" rel="lightbox[637]"><img class="size-medium wp-image-639 aligncenter" title="Evaporation of Water from a Jar" src="http://www.keytechinc.com/blog/wp-content/uploads/2010/06/Evaporation_of_Water-300x230.jpg" alt="" width="300" height="230" /></a></p>
<p><strong>Volume and Flow Rate</strong></p>
<p>So, how does a measure of weight relate to volume and flow-rate? Well, the density of water is pretty well defined based on temperature (and weight / density = volume). Accounting for the error of this density value, as well as errors in the scale resolution and time resolution provided excellent measurement results by which to evaluate the devices.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2010/collecting-very-fine-volumetric-accuracy-data/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When To Do It Yourself</title>
		<link>http://www.keytechinc.com/blog/index.php/2010/when-to-do-it-yourself/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2010/when-to-do-it-yourself/#comments</comments>
		<pubDate>Tue, 11 May 2010 12:32:44 +0000</pubDate>
		<dc:creator>Chad Schneider</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Manufacturing]]></category>
		<category><![CDATA[medical devices]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=579</guid>
		<description><![CDATA[Whether to build a custom product or go with something off the shelf can be a tough decision. There are several factors to consider when shopping for off-the-shelf solutions, and cost is only one of them.]]></description>
			<content:encoded><![CDATA[<p>Whether to build a custom product or go with something off the shelf can be a tough decision. There are several factors to consider when shopping for off-the-shelf solutions, and cost is only one of them.</p>
<p><strong>Cost</strong></p>
<p>Cost can certainly drive one to go with the off-the-shelf solution. If you’re making a low-volume medical device, you might not reach the economies of scale that enable efficient processes and capital investments to drive down cost. Off-the-shelf solutions can save both unit cost and development cost. Plus, prototyping can be accelerated, making time-to-market shorter. However, as a brilliant engineer, you might be able to come up with a less expensive solution then anything out there, especially if it’s for a very specific application.</p>
<p><strong>Branding</strong></p>
<p>Branding can be another issue. If your product looks exactly like a competitor or it’s just packaged in a gray box, that’s a problem. Often, the case is going to be custom for just this reason. For a custom case, you also get to choose colors, shapes, and dimensions to help distinguish your product in the marketplace. It’s less obvious if you’re using a standard piezo actuator to drive an auto-focus mechanism that is hidden inside an enclosure. Of course, if you’re product is a camera, you may want to spend some time making a high-quality, custom auto-focus mechanism so you can use it as a selling point.</p>
<p><strong>Quality Control and Availability</strong></p>
<p>Buying an off-the-shelf component puts you at the mercy of the manufacturer. Their stated tolerances may be less than you need, or they don’t meet their tolerances for every part they ship you.</p>
<p>Then, there’s the issue of shipping your product. If you have a contract to fulfill orders, that’s great for you, but if your quantities are low, you might just be a fly on the windshield of your part supplier.</p>
<ul>
<li>Your order may be pushed aside to fill a bigger order.</li>
<li>The life-cycle may end and nobody tells you.</li>
<li>Your part cost can go up next year. Sorry.</li>
<li>The latest firmware release could wreak havoc on your controller application.</li>
</ul>
<p><strong>Focus</strong></p>
<p>Unless you’re 100% vertically integrated, you’ll have to rely on some degree of off-the-shelf components. You can be a very successful device manufacturer without making your own resistors, screws, LCD screens, membrane switch panels, or plastic resin. Concentrate your energy on what makes your product better.  It’s always smart to know your limitations.</p>
<p><strong>Does it exist?</strong></p>
<p>The primary reason to build a custom component is that it doesn’t otherwise exist at or near your target price point. It’s pretty compelling, and probably the biggest factor. If what you need doesn’t exist, custom is the only way to go.</p>
<p><strong>Inspiration for your own custom fabrication</strong></p>
<p><a href="http://www.keytechinc.com/about/staff/Dave.html" target="_blank">Dave </a>sent me a link to Will Urbina&#8217;s video showing the build process for a custom 13TB RAID5 Network Attached Storage device to hold exceedingly hard-drive intensive video editing projects. He could have bought a bunch of external USB hard-drives and made do with a fragmented storage solution or purchased an enterprise product for $10,000. Instead, he’s created a high-quality device somewhere in between. Kudos to the video production quality, too.</p>
<p>Will Urbina is a computer designer and a &#8220;video production guy&#8221;. You can find out about more of his mod projects at <a href="http://www.willudesign.com" target="_blank">www.willudesign.com</a>. If the videos don&#8217;t load correctly, you can find them on YouTube &#8211; <a href="http://www.youtube.com/watch?v=BatakM9iAik&#038;feature=player_embedded" target="_blank">Part  1</a>, <a href="http://www.youtube.com/watch?v=XPjcXkKxkIA&#038;feature=related" target="_blank">Part  2</a>.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="580" height="360" 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/BatakM9iAik&#038;hl=en_US&#038;fs=1&#038;color1=0x234900&#038;color2=0x4e9e00&#038;border=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="580" height="360" src="http://www.youtube.com/v/BatakM9iAik&#038;hl=en_US&#038;fs=1&#038;color1=0x234900&#038;color2=0x4e9e00&#038;border=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="580" height="360" 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/XPjcXkKxkIA&#038;hl=en_US&#038;fs=1&#038;color1=0x234900&#038;color2=0x4e9e00&#038;border=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="580" height="360" src="http://www.youtube.com/v/XPjcXkKxkIA&#038;hl=en_US&#038;fs=1&#038;color1=0x234900&#038;color2=0x4e9e00&#038;border=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2010/when-to-do-it-yourself/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Starting Your Product Specification</title>
		<link>http://www.keytechinc.com/blog/index.php/2009/starting-your-product-specification/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2009/starting-your-product-specification/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 12:53:23 +0000</pubDate>
		<dc:creator>Chad Schneider</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Product Design]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[customer]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[product development]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[user]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=472</guid>
		<description><![CDATA[Creating a detailed Product Specification is one of the most important steps one can take at the beginning of new product development. If the spec defines the entire sphere of possibilities, what needs to be included (and excluded) here?]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-475" title="Confused by where to start your product specification?" src="http://www.keytechinc.com/blog/wp-content/uploads/2009/12/questions.jpg" alt="Confused by where to start your product specification?" width="210" height="158" />Creating a detailed Product Specification is one of the most important steps one can take at the beginning of new product development. Previously, I wrote a post with some tips on <a href="../index.php/2009/detailed-product-specification/" target="_blank">how to craft entries in a product specification</a>, but you might still be stuck at the starting line. If the spec defines the entire sphere of possibilities, what needs to be included (and excluded) here?</p>
<p>Most of the specific values of the product specification will come from external sources, as opposed to technical constraints. The spec will include the needs of the end-user, but any design is likely to also involve input from those people between the engineers and the end-users &#8211; a contract client, the marketing department, or internal management. In product development, there are very real market pressures to consider regarding sales, user needs, competitors, price, and more that will influence the overall design.</p>
<p>Specifications will vary from product to product, but there are certainly some aspects that are likely to show up everywhere.</p>
<p><strong><em>Performance</em></strong></p>
<p>Of course, most devices have to meet performance criteria as a major consideration of their success. This includes factors like accuracy, reliability, appropriate measurement or operating ranges, data logging capacity, or data transmission characteristics. These factors may be defined as minimum and maximum limits, to be determined later based on cost, technology, and other features. Try not to limit the possibilities yet, leaving room for compromises later.</p>
<p><strong><em>Construction</em></strong></p>
<p>Even if the materials haven’t been defined because of performance features still waiting to be designed, there are details that can be defined early on. We might define the parameters of a Drop Test, a maximum device weight, or other factors that will influence our choices of materials and assembly. Will the inside of the device need to be accessible for cleaning or service? How will the device be used?</p>
<p><strong><em>Environmental</em></strong></p>
<p>When products work fine in the lab and crash in real life, there may have been factors that were overlooked. Long-term problems like corrosion, moisture, dust, and UV damage can cause intermittent failures as the product is used and aged. Short-term problems such as operating and storage temperatures, poorly regulated power, or susceptibility to electromagnetic interference (EMI) can break a device under certain conditions while it seems to work fine at other times. Where will the device be used?</p>
<p><strong><em>Appearance</em></strong></p>
<p>Some engineers may not like to consider how a device will look before it is actually working. However, design and appearance are important factors in the usability, marketability, and overall attractiveness of a device. You may have a company color scheme or user interface requirements to meet.</p>
<p><strong><em>Additional Factors</em></strong></p>
<p>Depending on the product, there can be a variety of other considerations. For medical devices, safety and regulatory compliance are significant considerations to be determined early in the project. How the user will interact with the device is also important. Additional factors such as requirements for product reliability, serviceability, assembly, and documentation may also be defined. Here’s where we might include any operational procedures like setup or shut-down requirements, calibration, or testing.</p>
<p>Photo credit: <em><a href="http://www.sxc.hu/photo/1238327">Chris Baker</a></em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2009/starting-your-product-specification/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disruptive Innovation</title>
		<link>http://www.keytechinc.com/blog/index.php/2009/disruptive-innovation/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2009/disruptive-innovation/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 11:20:38 +0000</pubDate>
		<dc:creator>Chad Schneider</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Problem Solving]]></category>
		<category><![CDATA[Product Design]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[conserve]]></category>
		<category><![CDATA[cost]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[innovation]]></category>
		<category><![CDATA[medical]]></category>
		<category><![CDATA[medical devices]]></category>
		<category><![CDATA[Microfluidics]]></category>
		<category><![CDATA[reduce]]></category>
		<category><![CDATA[resource]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=386</guid>
		<description><![CDATA[Designing medical devices can be an expensive undertaking. It can cost thousands of dollars for a traditional setup to make microfluidic chips or a centrifuge to isolate the components of a multi-constituent sample. Luckily, the creative minds that are focused on solving complex, technical problems don't stop working when there's a tight budget.]]></description>
			<content:encoded><![CDATA[<p>Designing medical devices can be an expensive undertaking. It can cost thousands of dollars for a traditional setup to make microfluidic chips or a centrifuge to isolate the components of a multi-constituent sample. Luckily, the creative minds that are focused on solving complex, technical problems don&#8217;t stop working when there&#8217;s a tight budget.</p>
<p>In <em>The Innovator&#8217;s Prescription</em>, Clayton Christensen discusses how disruptive solutions are the evolutions that take the status quo to the next level. They may or may not be technical leaps, but they are new business models that take Blue-Chip titans by surprise, knocking them from #1 and leaving them trying to catch up. Think Canon taking printing business from Xerox by moving it from the giant mega-machine to the desktop. Christensen&#8217;s book specifically addresses the business models of health-care, but many of the concepts can be easily transported to other industries.</p>
<p>Here are two examples of the DIY mentality creating some disruptive, and hopefully game-changing, solutions to common problems.</p>
<p><strong>Michelle Khine</strong> is an Assistant Professor at UC Irvine working on microfluidics and nanotechnologies. As part of their research, she and her team developed a technique to create microfluidic chips quickly and cheaply using Shrinky Dinks®, an oven, and a printer. Although she was just trying to get her lab up and running quickly, she ended up creating a breakthrough technology that resulted in her being named one of MIT&#8217;s TR35, an award given to top innovators under 35 years old. Yes, the toys of childhood are now the research tools of the future. So, if your boss asks you why you have Rock &#8216;Em Sock &#8216;Em Robots on your desk, you can point to this.</p>
<p><em>Technology Review 2009 &#8211; <a href="http://www.techreview.com/tr35/Profile.aspx?Cand=T&amp;TRID=764" target="_blank">A children&#8217;s toy inspires a cheap, easy production method for high-tech diagnostic chips</a><br />
</em></p>
<p><strong>Chemistry students</strong> at Harvard University devised a $2 device to separate plasma from blood using an egg-beater and a few other parts. The resulting plasma is more than sufficient to detect diseases such as Hepatitis B and cystercosis. While not quite ready for the major laboratories, the device would be useful to doctors in remote locations without the financial resources to send blood off to a lab for testing.</p>
<p><a href="http://www.eurekalert.org/pub_releases/2008-10/rsoc-ec101508.php" target="_blank">$2 egg-beater could save lives in developing countries</a></p>
<div class="wp-caption aligncenter" style="width: 252px"><img title="$2 Device Separates Plasma From Whole Blood" src="http://www.keytechinc.com/blog/wp-content/uploads/2009/10/100709_1143_DisruptiveI1.png" alt="$2 Device Separates Plasma From Whole Blood" width="242" height="363" /><p class="wp-caption-text"> </p></div>
<p style="text-align: center;">
<p>Photo credit: <a href="http://www.eurekalert.org/multimedia/pub/10352.php?from=123606" target="_blank">Malancha Gupta</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2009/disruptive-innovation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Selecting Flash Memory</title>
		<link>http://www.keytechinc.com/blog/index.php/2009/selecting-flash-memory/</link>
		<comments>http://www.keytechinc.com/blog/index.php/2009/selecting-flash-memory/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 12:59:18 +0000</pubDate>
		<dc:creator>Lei Zong</dc:creator>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Product Design]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[component selection]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[medical devices]]></category>
		<category><![CDATA[resource]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://www.keytechinc.com/blog/?p=334</guid>
		<description><![CDATA[Flash memory is becoming increasingly popular in portable devices as the main storage medium. Flash memory offers advantages such as a serial interface, fast access time (compared to hard drives), and low power consumption, making them a popular choice for embedded medical devices.]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves /> <w:TrackFormatting /> <w:PunctuationKerning /> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF /> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> <w:Word11KerningPairs /> <w:CachedColBalance /> </w:Compatibility> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> <m:brkBinSub m:val="&#45;-" /> <m:smallFrac m:val="off" /> <m:dispDef /> <m:lMargin m:val="0" /> <m:rMargin m:val="0" /> <m:defJc m:val="centerGroup" /> <m:wrapIndent m:val="1440" /> <m:intLim m:val="subSup" /> <m:naryLim m:val="undOvr" /> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:LsdException Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:LsdException Locked="false" Priority="39" Name="toc 1" /> <w:LsdException Locked="false" Priority="39" Name="toc 2" /> <w:LsdException Locked="false" Priority="39" Name="toc 3" /> <w:LsdException Locked="false" Priority="39" Name="toc 4" /> <w:LsdException Locked="false" Priority="39" Name="toc 5" /> <w:LsdException Locked="false" Priority="39" Name="toc 6" /> <w:LsdException Locked="false" Priority="39" Name="toc 7" /> <w:LsdException Locked="false" Priority="39" Name="toc 8" /> <w:LsdException Locked="false" Priority="39" Name="toc 9" /> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:LsdException Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:LsdException Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:LsdException Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:LsdException Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:LsdException Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:LsdException Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:LsdException Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:LsdException Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:LsdException Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:LsdException Locked="<br />
false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:LsdException Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:LsdException Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFor<br />
mat="true" Name="Intense Emphasis" /> <w:LsdException Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:LsdException Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:LsdException Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:LsdException Locked="false" Priority="37" Name="Bibliography" /> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:LatentStyles> </xml><![endif]--><!--[if !mso]><span class="mceItemObject"   classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></span><br />
<mce:style><!  st1\:*{behavior:url(#ieooui) } --></p>
<p><!--[endif]--></p>
<p class="MsoNormal">Flash memory is becoming increasingly popular in portable devices as the main storage medium.<span> </span>Recent netbook usage of flash-based Solid State Drives (SSD) as a replacement for traditional disk-based hard drives also speaks to the increasing popularity of flash memory.<span> </span>Flash memory offers advantages such as a serial interface, fast access time (compare to hard drives), and low power consumption.<span> </span>For these reasons, flash memory is a popular design choice for embedded medical devices.<span> </span></p>
<p class="MsoNormal"><strong>Types of Flash Memory</strong></p>
<p class="MsoNormal">There are two main types of flash memory: NOR flash and NAND flash.<span> </span>The basic technologies for the two are the same &#8211; floating-gate transistors.<span> </span>The difference is how these transistors are connected together to form the memory blocks.<span> </span>NOR flash supports byte read/write, although erase is done in blocks.<span> </span>In this manner, NOR flash acts like traditional DRAM and ROM.<span> </span>NAND flash supports block-based or page-based access only and thus acts like a hard drive.</p>
<p class="MsoNormal">Traditional flash memory is manufactured using single level cells (SLC) technology, which means each floating-gate transistor holds one bit of data.<span> </span>Newer flash memory offers Multi-level cells (MLC), allowing two or more bits of data to be stored at one floating-gate transistor.<span> </span>MLC flash offers more storage capacity and lower cost, but tends to consume more power and is less reliable than SLC flash.</p>
<p class="MsoNormal"><strong>Flash Translation Layer</strong></p>
<p class="MsoNormal">Due to the block nature of the NAND flash, one bad cell can render the entire block unusable.<span> </span>Thus memory management is needed to guarantee data integrity.<span> </span>Flash Translation Layer (FTL) is the software layer that handles flash memory management.<span> </span>It performs three major tasks: error code correction (ECC), bad block management, and wear leveling.<span> </span>ECC can correct up to 22 bits in each 2048 bits of data.<span> </span>In cases when ECC cannot correct the error, it may still be able to detect it.<span> </span>Since most flash memory is shipped with some bad blocks and bad blocks can occur during the lifetime of the device, bad block management is essential to keeping track of usable blocks.<span> </span>One main disadvantage of the flash memory is the write cycle limit.<span> </span>Typical flash memory guarantees about 100,000 write-erase cycles.<span> </span>Therefore, it’s important to balance out write activities over the entire memory range in order to increase memory lifespan.<span> </span></p>
<p class="MsoNormal">A simple example can illustrate this point.<span> </span>Assuming that a file of 50 blocks is written to a flash memory containing 4096 blocks at a rate of 1 file/minute, and assuming that the write limit on the memory is 100K, without wear leveling, the memory is good for less than 70 days.<span> </span>On the other hand, with wear leveling, all blocks are used equally to balance out the write activities, and the memory is good for more than 15 years!<span> </span></p>
<p class="MsoNormal"><strong>Size and Power Consumption</strong></p>
<p class="MsoNormal">The service of FTL can be performed by various hardware and software components.<span> </span>ECC can be performed in hardware, where wear-leveling and bad block management may be included in the flash file system, especially when a Real-Time Operating System (RTOS) is used.<span> </span>When a device interfaces with a removable flash memory card, the memory management is done on the memory card.<span> </span>The tradeoffs between these approaches include power consumption, cost associated with the RTOS and microcontroller, and device footprint size.<span> </span></p>
<p class="MsoNormal">When power consumption and device size are top concerns, eMMC flash memory can be a suitable option.<span> </span>eMMC flash is basically flash memory bundled with a memory controller.<span> </span>It eliminates the need of an RTOS for the purpose of managing flash memory, and offers lower power consumption and a smaller footprint than removable memory cards.<span> </span>It also offers a simple serial interface such as MMC/SPI, thus reducing complexity on the microcontroller side. Of course, this smaller packaging comes at a higher price, which could be a deciding factor in high volume production.</p>
<p class="MsoNormal">With so many varieties of flash memory, hopefully you can find the one that works for your design.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keytechinc.com/blog/index.php/2009/selecting-flash-memory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

