<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>the Delta Echo</title>
	<atom:link href="http://thedeltaecho.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://thedeltaecho.wordpress.com</link>
	<description>...Systems Engineering</description>
	<lastBuildDate>Thu, 08 Dec 2011 23:42:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='thedeltaecho.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>the Delta Echo</title>
		<link>http://thedeltaecho.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://thedeltaecho.wordpress.com/osd.xml" title="the Delta Echo" />
	<atom:link rel='hub' href='http://thedeltaecho.wordpress.com/?pushpress=hub'/>
		<item>
		<title>0.4.1 Alpha (4th public release)</title>
		<link>http://thedeltaecho.wordpress.com/2011/08/17/0-4-1-alpha-4th-public-release/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/08/17/0-4-1-alpha-4th-public-release/#comments</comments>
		<pubDate>Thu, 18 Aug 2011 01:21:57 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=364</guid>
		<description><![CDATA[I&#8217;ve posted another release of 2JZDuino at Sourceforge, available here This release comes after an extensive amount of testing and a few minor code changes &#38; tweaks. As of this release I&#8217;ve logged about 10,000 km operating my IS300 with the 2JZduino connected as a piggyback ECU. For a large part of it I&#8217;d been [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=364&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve posted another release of 2JZDuino at Sourceforge, available <a href="https://sourceforge.net/projects/twojzduino/" title="2JZDuino Sourceforge project" target="_blank">here</a></p>
<p>This release comes after an extensive amount of testing and a few minor code changes &amp; tweaks.  As of this release I&#8217;ve logged about 10,000 km operating my IS300 with the 2JZduino connected as a piggyback ECU.  For a large part of it I&#8217;d been fighting with a lean AFR condition that seems to occur either at low RPM when the throttle is partially depressed (i.e. tip-in), or at idle.  I&#8217;ve speculated that there is an issue with the stability of the MAF reading due either to the larger intake tube diameter I have installed (3.5&#8243; diam. vs. 2.75&#8243; stock diam.), or turbulence around the MAF sensor due to the shortened intake tract.</p>
<p>There are two symptoms&#8230;</p>
<p>1) At idle the AFR would sometimes randomly drift lean to ~17:1 or rich to ~11:1 before the short-term fuel trims would correct.</p>
<p>2) For low RPMs and partial throttle the AFR would drift lean to upwards of 18:1.  This was often observed when accelerating gently (MAP readings ~80kPa) from idle RPMs.  Under this condition the ECU seems to stay in closed-loop operation which doesn&#8217;t provide enough fuel enrichment when the throttle first begins to open.  The result is a significant loss of torque when trying to accelerate from low RPM.  More throttle would trigger open-loop behaviour and the ECU would command the correct fuel for ~13:1 AFR.  But part-throttle often resulted in a fuel shortage until the O2 sensors would command the short-term fuel trims to recover (or driver throttle input triggered closed-loop condition).</p>
<p>This highlighted a potential risk for when the Supercharger is installed&#8230; part throttle could result in positive manifold pressures which when mixed with lean AFR conditions could result in engine damage.</p>
<p>For both problems I implemented some logic in the h_InjectorChange() function that intervenes with the injector pulse width if a lean AFR condition is detected.  The code is as follows&#8230;</p>
<p><pre class="brush: cpp; wrap-lines: false;">
  if (!InjectorEventState[Inj_Index]) { // only intervene with InjOFF events
    unsigned int thisInjPWcmd_T64 = TCNT4 - T64_LastInjON[Inj_Index]; // calculate the commanded PW for this Injector and for this combustion cycle
    if ((Inj_Index &lt; 3 &amp;&amp; AirFuelRatioB1_x10 &gt; 160) || (Inj_Index &gt;= 3 &amp;&amp; AirFuelRatioB2_x10 &gt; 160)) { // this Injector # is part of a bank that is currently LEAN
      // Sometimes at tip-in/accel. from idle a lean condition occurs (for MAP &gt;~60kPa) -&gt; Add fuel to obtain the expected amount
      if (!EngineIsStarting &amp;&amp; ManifoldAirPressure &gt; 60 &amp;&amp; thisInjPWcmd_T64 &lt; ExpectedIdleTipInInjPW_T64[MAPindex]) EventDelay += ExpectedIdleTipInInjPW_T64[MAPindex] - thisInjPWcmd_T64;
      // Sometimes AFR drifts lean at steady-idle -&gt; Add 1/2 difference in fuel between previous injection dwell and Normal Idle fuel amount
      else if (ManifoldAirPressure &gt;= 27 &amp;&amp; EngineHz &lt; 22 &amp;&amp; thisInjPWcmd_T64 &lt; NormalIdleInjPW_T64) EventDelay += (NormalIdleInjPW_T64 - thisInjPWcmd_T64) &gt;&gt; 1;
    }
  }
</pre></p>
<p>Effectively, if the AFR is ever detected to be leaner than 16:1, the logic will intervene and add to the injector pulse width: an amount to drive the AFR to stoichiometric AFR for MAP &gt; 60 kPa, and half the amount to drive AFR to stoichiometric for the idle condition.  The stoichiometric amount is pre-calculated based on an assumed volumetric efficiency of 50% (a reasonable estimate for the situation where these lean conditions tend to occur).</p>
<p>The logic is not intended to enrich the fuel past stoichiometric because the stock ECU fuel control still needs an opportunity to work.  The idea is simply to enrich the fuel mixture temporarily while the stock closed-loop system responds.</p>
<p>For the idle condition the enrichment is only half of the difference between the expected and actual pulse-width (allowing the stock closed-loop control more of an opportunity to intervene).  Generally the idle AFR fluctuations are more slow-moving, while the part-throttle lean condition is a fleeting condition requiring more aggressive intervention.</p>
<p>There is no intervention for MAP &lt; 27 kPa, which is the point where the engine is deemed to be in vacuum and is decelerating (i.e. driver throttle input is zero).</p>
<p>Other changes since the v0.3 release&#8230;</p>
<ul>
<li>Volumetric Efficiency considerations added to the calculation of InjectorOffsetsT64[][].  The volumetric efficiency for each point on the RPM vs. MAP table is now considered when the stoichiometric fuel amount is estimated (refer to <a href="http://thedeltaecho.wordpress.com/2011/04/15/volumetric-efficiency/" title="this post" target="_blank">this post</a>).  This should provide a more accurate fuel adjustment from the Injector Scaling map page of IS300_Arduino_EEPROM.exe.</li>
<li>New logic added that tracks EngineIsStarting.  When the engine first starts to crank a maximum injector pulse-width is imposed to prevent over-enrichment in the case where larger injectors are installed.  The stock ECU commands a lot of fuel during engine cranking.  When test fitting my 440cc/min injectors I found this to result in much too much fuel during engine start.  IS300_Arduino_EEPROM.exe now allows you to set the &#8220;Max Cranking AFR&#8221; which calculates a maximum pulse-width for 100% VE for the &#8220;Fuel Injector Size&#8221; value.</li>
<li>Logic implemented to intervene with lean conditions at idle, and under part-throttle (per the elaborate description above).</li>
<p>I&#8217;ve had some limited time to test the operation of 2JZduino with larger fuel injectors.  I was limited by what seems to have been a small air leak between the injectors and the intake manifold, leading the engine to behave like there was a vacuum leak at low RPM.  I&#8217;ve run into delay after delay in resolving this mechanical issue, so further testing will have to wait for now.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/364/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/364/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/364/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/364/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/364/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/364/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/364/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/364/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/364/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/364/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/364/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/364/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/364/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/364/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=364&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/08/17/0-4-1-alpha-4th-public-release/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>
	</item>
		<item>
		<title>Volumetric Efficiency</title>
		<link>http://thedeltaecho.wordpress.com/2011/04/15/volumetric-efficiency/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/04/15/volumetric-efficiency/#comments</comments>
		<pubDate>Sat, 16 Apr 2011 04:24:17 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=354</guid>
		<description><![CDATA[Early on in developing 2JZduino I made an assumption that the Injector Pulse length for each combustion cycle was exclusively a function of Manifold Pressure. The reasoning was that independent of all other variables the volumetric efficiency of the air intake system would remain mostly constant and a certain Manifold Pressure correlates strongly to the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=354&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Early on in developing 2JZduino I made an assumption that the Injector Pulse length for each combustion cycle was exclusively a function of Manifold Pressure.  The reasoning was that independent of all other variables the volumetric efficiency of the air intake system would remain mostly constant and a certain Manifold Pressure correlates strongly to the volume of air in the combustion chamber.</p>
<p>This is grossly incorrect.  In hindsight it&#8217;s obvious that the engine replaces air at varying efficiencies (which explains things like why there is such a strong torque curve in a 4-stroke engine), but I was mistaken in the magnitude of the effect.  And being so large, the effect of VE has a significant impact on fuel trims (which were previously assuming VE ~= 90%), upwards of 400% under some engine conditions.</p>
<p>To go about resolving this I logged a fair amount of engine data intentionally exercising a range of engine speeds and manifold air pressures so that I could calculate volumetric efficiency in post processing.  The datalogger object in the 2JZduino code measures Engine Hz, MAP, AFR (banks 1 &amp; 2), and Injector Pulse Length every 167ms.  With this information I have measurements for the amount of air in the combustion chamber (calculated from AFR and Injected Fuel amount), and quantity of air for 100% efficiency (manifold pressure).  The actual volumetric efficiency for each data-point is then calculated as the ratio of the two.  The calculation looks like this&#8230;</p>
<p>2JZduino datalogger Measurements:<br />
Hz = instantaneous engine speed<br />
MAP = instantaneous manifold air (absolute) pressure, kPa<br />
AFR = Air Fuel Ratio (latent)<br />
T_inj = injector pulse length for previous combustion cycle, ms</p>
<p>Constants and Knowns:<br />
Q_inj = 3.32 g/s = fuel injector flow rate<br />
Inj_Latency = 1 ms = opening time of the injector solenoid<br />
V_cyl = 0.5L = cylinder volume (swept)<br />
CR = 10.5 = engine compression ratio<br />
d_Air = 1.25 g/L = approximate air density<br />
P_atm = 101 kPa = atmospheric pressure</p>
<p>Solving for the combustion chamber air mass that corresponds to 100% volumetric efficiency:<br />
V_chamber = 0.5 + 0.5/(10.5-1) = 0.553L = total volume of combustion chamber<br />
M_air_100% = 0.553 * d_Air = 691mg = air mass for 100% VE and MAP = P_atm</p>
<p>Solving for the instantaneous air mass in the combustion chamber for the instantaneous measurements: e.g. for Hz = 38, MAP = 66 (absolute, T_inj = 5.0, AFR = 14.1<br />
M_fuel = (T_inj &#8211; Inj_Latency) * Q_inj = 13.3 mg<br />
M_air = M_fuel * AFR = 186.5 mg</p>
<p>Solving for measured VE:<br />
VE = M_air / (M_air_100% * MAP/P_atm) = 186.5 / (691 * 66/101) = 41.3%</p>
<p>Using these calculations for every logged data point I was then able in post processing to begin separating/sorting/analyzing the relationship between engine speed, manifold pressure, and volumetric efficiency.  I eventually arrived at the following formula empirically that calculates volumetric efficiency (percent) as a function of engine speed and manifold pressure&#8230;</p>
<p><strong>Eq. #1)<br />
VE(Hz, MAP) = 12 + (Hz * MAP)/320 + MAP/2.67 &#8211; Hz/16 + 100/Hz<br />
&#8230;constrained as VE &gt; 20% and VE &gt; 90%</strong></p>
<p>This relationship was then used to calculate and predict (rather than measure) the volumetric efficiency for each data point in the datalog, and then further predict the pulse length that would be required for the measured AFR.  Finally the error is calculated between actual injector pulse length and predicted injector pulse length.  Continuing from the example above the calculation is as follows&#8230;<br />
VE(38, 66) = 44.8%<br />
M&#8217;_fuel = (V_chamber * d_Air * MAP/P_atm)/AFR * VE(Hz, MAP) = 14.4 mg<br />
T&#8217;_inj = Inj_Latency + M&#8217;_fuel/Q_inj = 5.3 ms<br />
Pulse Length Error = 5.3 &#8211; 5.0 = 0.3 ms</p>
<p>As verification to the empirical VE formula, the graph below shows select portions of the data-logs that present the measured and calculated (using Eq. #1) injector pulse lengths alongside the error between them.  For reference the corresponding engine MAP is also shown.</p>
<p><a href="http://thedeltaecho.files.wordpress.com/2011/04/veverification.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/04/veverification.jpg?w=300&#038;h=202" alt="" title="VE verification: Pulse Width Analysis" width="300" height="202" class="aligncenter size-medium wp-image-358" /></a></p>
<p>Clearly, the errors between calculated and measured injector pulse lengths are held mostly to less than 1ms.  Exceptions to this occur primarily under conditions where injector pulse-lengths change rapidly (caused by rapid changes in throttle position).  In these instances the response times of sensors and even the 2ZJduino are the likely sources of error.</p>
<p>This particular calculation for VE (Eq. #1) shows to be a rather good approximation.  Now with an understood of volumetric efficiency for my particular 2JZ-GE, next steps are to apply the calculated VE values to the fuel trim map in 2JZduino.  More on this in a future post.</p>
<p>For reference, below is a map of measured Volumetric Efficiency of my 2JZduino for Engine Hz vs. Manifold Air Pressure&#8230;</p>
<p><a href="http://thedeltaecho.files.wordpress.com/2011/04/vetable.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/04/vetable.jpg?w=300&#038;h=154" alt="" title="my 2JZ-GE VE table" width="300" height="154" class="aligncenter size-medium wp-image-359" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/354/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/354/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/354/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/354/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/354/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/354/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/354/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/354/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/354/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/354/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/354/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/354/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/354/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/354/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=354&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/04/15/volumetric-efficiency/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/04/veverification.jpg?w=300" medium="image">
			<media:title type="html">VE verification: Pulse Width Analysis</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/04/vetable.jpg?w=300" medium="image">
			<media:title type="html">my 2JZ-GE VE table</media:title>
		</media:content>
	</item>
		<item>
		<title>UnoEngineSim and (hacked) Interrupt Priorities on Arduino Mega</title>
		<link>http://thedeltaecho.wordpress.com/2011/04/05/unoenginesim-and-hacked-interrupt-priorities-on-arduino-mega/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/04/05/unoenginesim-and-hacked-interrupt-priorities-on-arduino-mega/#comments</comments>
		<pubDate>Tue, 05 Apr 2011 23:41:41 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=346</guid>
		<description><![CDATA[During testing I began to experience a misfire that was only occurring above about 5500 RPM. I wondered if the igniter signals were sometimes being delayed due to over-lapping interrupts that were higher priority. I&#8217;d recently purchased an Uno as a second Arduino and so I wrote an engine simulator that would run on the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=346&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>During testing I began to experience a misfire that was only occurring above about 5500 RPM.  I wondered if the igniter signals were sometimes being delayed due to over-lapping interrupts that were higher priority.  I&#8217;d recently purchased an Uno as a second Arduino and so I wrote an engine simulator that would run on the Uno to test my theory.</p>
<p>The Uno was configured to produce Injector and Igniter output signals at the intervals typical of a 2JZ-GE engine running at about 6000RPM.  These outputs were connected to the inputs of 2JZduino.  One-at-a-time the signals *output* by 2JZduino were connected back into the Uno on Pin8; the Input Capture pin, so that the latency of 2JZduino could be measured.  The Uno would then report out statistics on the time from when the simulated output signal was generated, to the time that 2JZduino recreated the signal (captured by the ATmega 168&#8242;s Timer1 Input Capture register).</p>
<p>Below is a copy of the EngineSim code run on the Uno.  Once a second, it reports out the # of events, minimum/maximum/average event delays, and the number of events that fell below the average (providing an estimate of the spread of the data).</p>
<p><pre class="brush: cpp; wrap-lines: false;">
// Pin assignments
// Pin2(PD2) = Inj1sim
// Pin3(PD3) = Inj2sim
// Pin4(PD4) = Inj3sim
// Pin5(PD5) = Inj4sim
// Pin6(PD6) = Inj5sim
// Pin7(PD7) = Inj6sim

// Pin8(PB0) = Input Capture

// Pin9(PB1) = IGT1sim
// Pin10(PB2) = IGT2sim
// Pin11(PB3) = IGT3sim

// ********************
// Establish all timing for engine speed of ~100Hz = 6000RPM (28us / deg)
// ********************

volatile unsigned int tEventQueue; // time the event was queued
volatile unsigned int tEventDelayMax; // max elapsed time from Event-queued to Input-Capture
volatile unsigned int tEventDelayMin; // min elapsed time from Event-queued to Input-Capture
volatile unsigned long tEventDelaySum;
volatile unsigned int tEventCount;
volatile unsigned int tEventCountSmall;
volatile unsigned int tEventDelayAverage;

void MonitorInput()
{
  TCCR1B |= B10000000; // Noise Canceler = ON, Capture Falling Edges
  TIMSK1 |= B00100000; // enable Input Capture interrupt
  DDRB &amp;= B11111110; // B0 is an input
  PORTB |= B00000001; // B0 pull-up resistor ON
}

void StartIGTandInjSim()
{
  DDRB |= B00001110; // IGT1..3 sim on PB1..3
  PORTB &amp;= B11110001; // Ensure IGT1..3 signals are OFF
  DDRD |= B11111100; // Inj1..6 sim on PD2..7
  PORTD |= B11111100; // turn on Inj1..6sim -&gt; signal is active low
  TCCR1A = 0; // Normal operating mode
  TCCR1B = B00000010; // clk/8 -&gt; 32.77ms roll-over
  TIMSK1 |= B00000110; // enable OCIE1B and OCIE1A 
}

void StopIGTandInjSim()
{
  PORTB &amp;= B11110001; // Ensure IGT1..3 signals are OFF
  PORTD |= B11111100; // turn on Inj1..6sim -&gt; signal is active low
  TIMSK1 = 0;
}

ISR(TIMER1_COMPA_vect) // IGT sim
{
  // Toggle Sequence: 1,1,2,2,3,3
  const byte IGTbitmaskSeq[6] = { B00000010, B00000010, B00000100, B00000100, B00001000, B00001000 };
  static byte IDX = 0;

  if (IDX == 1) tEventQueue = TCNT1; // Queue the event for IGT1 ON
  PINB = IGTbitmaskSeq[IDX]; // toggle in sequence
  IDX++;
  if (IDX &gt;= 6) IDX = 0;
  
  OCR1A += 5247; // Next event: 3250/65536 * 32.77ms = 1.62ms -&gt; 3 IGT pulses (equally spaced) each revolution
}

ISR(TIMER1_COMPB_vect) // INJ sim
{
  PIND = B11111100; // toggle all the injectors simultaneously
  OCR1B += 10003; // Next event: 10000/65536 * 32.77ms = 5ms -&gt; Sim. all Injectors pulse each revolution
}

ISR(TIMER1_CAPT_vect)
{
  unsigned int Delay = ICR1 - tEventQueue;
  if (Delay &gt; tEventDelayMax) tEventDelayMax = Delay; // store the peak delay that occurred
  if (Delay &lt; tEventDelayMin) tEventDelayMin = Delay; // store minimum delay that occurs
  if (Delay &lt; tEventDelayAverage) tEventCountSmall++;
  tEventDelaySum += Delay;
  tEventCount++;
}

void StartSim()
{
    StartIGTandInjSim();
    MonitorInput();
}

void StopSim()
{
  StopIGTandInjSim();
  tEventDelayMax = 0;
}

void setup() {
  Serial.begin(115200);
  Serial.println(&quot;IGT1 ON Event Delay in clk/8 counts...&quot;);
  MonitorInput();

  StartSim();
  Serial.println(&quot;Begin...&quot;);
}

void loop() {
  if (Serial.available())
  {
    char c = Serial.read();
    
    if (c == 's') {
      StartSim();
      Serial.println(&quot;Begin...&quot;);
    }
    else if (c == 'x') {
      StopSim();
      Serial.println(&quot;stop.&quot;);
    }
  }
  if (tEventDelayMax &gt; 0) 
  {
    Serial.print(tEventDelayMin, DEC);
    Serial.print(&quot; .. &quot;);
    Serial.print(tEventDelayMax, DEC);
    Serial.print(&quot; (&quot;);
    Serial.print(tEventDelayAverage, DEC);
    Serial.print(&quot;:&quot;);
    Serial.print(tEventCount, DEC);
    Serial.print(&quot;:&quot;);
    Serial.print(tEventCountSmall, DEC);
    Serial.println(&quot;)&quot;);
  }
  else Serial.print(&quot;.&quot;);
  tEventDelayAverage = tEventDelaySum/tEventCount;
  tEventDelayMax = 0;
  tEventDelayMin = 65535;
  tEventDelaySum = 0;
  tEventCount = 0;
  tEventCountSmall = 0;
  delay(1000);
}
</pre></p>
<p>Note that the Injector and IGT signals are intentionally setup on different frequencies so they drift in and out of phase in over-lap.  This was done to ensure a worst-case scenario would eventually surface where the injector events, ADC_complete events, timer overflows, etc. would all interfere with the IGT events.  What I found is that on some occasions the igniter signals would be delayed by upwards of 600us.  At 5500 RPM this translates to about 20 degrees.  The Uno simulator was written as worst-case (with all 6 injectors firing simultaneously), but it was at least seeming plausible that under some circumstances interrupt conflicts could cause the igniter signal to be delayed long enough that a misfire could occur because the engine spark arrived too late.</p>
<p>Looking at the datasheet for the Atmega 1280, the Interrupt vectors show that the IGT interrupt requests (Pin Change Interrupt Requests 0/1/2) are lower in priority than the Injector interrupt requests (External Interrupt Request 0/1/2/3/4/5).  What I wanted was for the IGT interrupts to be treated with higher priority than the Injector interrupts.  Spark events are critical in timing, but getting slightly more or less fuel would have a negligible effect.  The solution I arrived at was to configure the interrupt handlers for the Injector External Interrupts like this&#8230;</p>
<p><pre class="brush: cpp; wrap-lines: false;">
ISR(INT0_vect, ISR_NOBLOCK) { // Ext Interrupt 0 on D0
  noInterrupts();
  myIS300.h_InjectorChange(0);
  interrupts();
};
</pre></p>
<p>In this way with the &#8220;ISR_NOBLOCK&#8221; argument, if all 6 Injector interrupts and an IGT interrupt occurred simultaneously the external interrupts would all queue up on the stack, each one interrupting the other, until the IGT interrupt gets serviced as the highest priority interrupt.  The IGT interrupt, being a blocking interrupt, would be fully-serviced, and then the Injector interrupts would start getting popped off the stock one-by-one, unwinding until normal program flow continued.</p>
<p>With this change the maximum delay on the IGT signal was reduced from 600us down to 40us.  95% of the time the IGT signal delay was &lt; 20us.  This translates to better than 1deg of latency in the IGT signal at 6000 RPM under worst-case conditions.</p>
<p>It turned out that the real-problem causing the high-RPM misfire was due to a 220 Ohm resistor being installed where there should have been a 10k Ohm resistor.  But the above was a good improvement nonetheless.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/346/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=346&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/04/05/unoenginesim-and-hacked-interrupt-priorities-on-arduino-mega/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>
	</item>
		<item>
		<title>0.3 Alpha (3rd public release)</title>
		<link>http://thedeltaecho.wordpress.com/2011/04/05/0-3-alpha-3rd-public-release/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/04/05/0-3-alpha-3rd-public-release/#comments</comments>
		<pubDate>Tue, 05 Apr 2011 22:49:00 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=341</guid>
		<description><![CDATA[I&#8217;m over-due for another release. As mentioned in my post 0.2 Alpha (2nd public release). I&#8217;ve been working on replacing the crank sensor intercept with IGT signal intercept. This is now working successfully and is implemented in v0.3 available here&#8230; 2JZduino at SourceForge Here&#8217;s a list of significant features new to v0.3&#8230; Developer notes are [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=341&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m over-due for another release.  As mentioned in my post <a href="http://thedeltaecho.wordpress.com/2010/11/12/0-2-alpha-2nd-public-release/">0.2 Alpha (2nd public release)</a>.  I&#8217;ve been working on replacing the crank sensor intercept with IGT signal intercept.  This is now working successfully and is implemented in v0.3 available here&#8230;<br />
<a href="https://sourceforge.net/projects/twojzduino/files/?">2JZduino at SourceForge</a></p>
<p>Here&#8217;s a list of significant features new to v0.3&#8230;</p>
<ul>
<li>Developer notes are now found in &#8220;DevNotes.txt&#8221; (they used to be at the top of &#8220;IS300_MAPadd.cpp&#8221;).</li>
<li>Note the inclusion of &#8220;IS300_Arduino_EEPROM.exe&#8221; in the sourceforge download.  This program will talk to and program the EEPROM values into 2JZduino.
<li>Igniter control &#8211; the code no longer supports interception and reproduction of the crank signal.  Instead it intercepts and reproduces the igniter signals:  IGT1, IGT2, IGT3.  &#8220;IGT ON&#8221; events are always executed immediately (which charges the igniter circuit).  &#8220;IGT OFF&#8221; events (which marks the firing of the spark) are executed depending on TimingRetardTable[][] values.</li>
<li>Fuel Injector pulse-adjustments are now calculated based on the Fuel Injector size stored in EEPROM.</li>
<li>Simulated narrowband circuit ground is now connected through PortB0 (Arduino pin 53).  The code floats this pin as an input until the LC-1s show they are ready.  As an input, the high-impedance drives the stock Toyota ECU into open-loop mode until the LC-1 begins outputting a meaningful signal.  When it switches to an input (held low), the ground patch triggers the stock ECU to switch into closed-loop.</li>
<li>Improved interrupt efficiency.  Igniter interrupts are now always serviced within 40us of their occurrence (20us 95% of the time).  Injector interrupts are serviced within 60us of their occurrence.</li>
<li>Engine speed now calculated from IGTon signals instead of Crank sensor signals.</li>
<li>Datalogger expanded to now include RPM, MAP, Bank1 AFR, Bank2 AFR, and Injector pulse-width data.  Datalogger information is now saved in a .csv file by &#8220;IS300_Arduino_EEPROM.exe&#8221; using the current date/time in the filename.</li>
<li>Reduced amount of SRAM used at run-time.</li>
<li>Added advanced injector and MAF compensation logic to EEPROM that will scale fuel injectors based on the new vs. stock fuel injector size, new vs. stock MAF sensor intake tube diameter, fuel injector lag, and a DC bias for the MAF signal.  *Note: this is experimental and unverified.  More details on this in a future post.</li>
</ul>
<p>Additionally, here&#8217;s a summary of the verification testing that I&#8217;ve completed since the last release.  I&#8217;ll be posting some more analytical information on these in the near-term, but for now, here are the results.</p>
<ul>
<li>My 2nd LC-1 wideband has been installed.  I&#8217;ve now gathered more than 20hours of operation with 2JZduino providing the simulated Narrowband signal for closed-loop fuel control.  It&#8217;s been successfully fooling the stock ECU into adjusting for an AFR of 15.1 instead of 14.7 while under closed-loop operation.</li>
<li>~4 hours of operation with 2JZduino providing active Injector Scaling (providing leaner fuel injection amounts at wide-open-throttle).</li>
<li>Verified that all 10k resistors are indeed 10k resistors&#8230; one of the resistors in the circuit for Injector #4 was found to actually be a 220 Ohm resistor.  This culprit was understandably causing me all kinds misfire problems for awhile.  I&#8217;ve learned a good lesson here :)</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/341/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=341&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/04/05/0-3-alpha-3rd-public-release/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>
	</item>
		<item>
		<title>2ZJDuino v0.1 Shield &#8211; Finished Product</title>
		<link>http://thedeltaecho.wordpress.com/2011/01/30/2zjduino-v0-1-shield-finished-product/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/01/30/2zjduino-v0-1-shield-finished-product/#comments</comments>
		<pubDate>Sun, 30 Jan 2011 16:00:42 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=324</guid>
		<description><![CDATA[After finally receiving all the parts I&#8217;ve found the time to finish building the packaged 2JZDuino v0.1. I recently posted about the custom PCB and packaging design. Below are photos of the actual unit built to that design. Design-features&#8230; 1/4&#8243; pressure line for MAP sensor Mini-Fit Jr. Molex connectors for engine bay connections; LCD, ECU [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=324&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>After finally receiving all the parts I&#8217;ve found the time to finish building the packaged 2JZDuino v0.1.  I recently posted about the <a href="http://thedeltaecho.wordpress.com/2010/12/08/2jzduino-pcbs/">custom PCB and packaging design</a>.  Below are photos of the actual unit built to that design.</p>
<p>Design-features&#8230;</p>
<li>1/4&#8243; pressure line for MAP sensor</li>
<li>Mini-Fit Jr. Molex connectors for engine bay connections; LCD, ECU connections, engine connections, power, Wideband sensors, simulated Narrowband signal</li>
<li>External ICSP connector for reprogramming</li>
<li>Onboard temperature sensor</li>
<li>Enclosed in a Bud Industries PI-1908, dimensions: 5.9&#8243; x 3.2&#8243; x 2.4&#8243; (15% smaller than the prototype unit)</li>
<p><a href="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1shielda.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1shielda.jpg?w=300&#038;h=265" alt="" title="2jzduinov0.1shieldA" width="300" height="265" class="aligncenter size-medium wp-image-333" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1shieldb.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1shieldb.jpg?w=300&#038;h=168" alt="" title="2jzduinov0.1shieldB" width="300" height="168" class="aligncenter size-medium wp-image-334" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1_assyb.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1_assyb.jpg?w=300&#038;h=193" alt="" title="2jzduinov0.1_assyB" width="300" height="193" class="aligncenter size-medium wp-image-329" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1b.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1b.jpg?w=300&#038;h=182" alt="" title="2jzduinov0.1B" width="300" height="182" class="aligncenter size-medium wp-image-332" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/324/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/324/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/324/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=324&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/01/30/2zjduino-v0-1-shield-finished-product/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1shielda.jpg?w=300" medium="image">
			<media:title type="html">2jzduinov0.1shieldA</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1shieldb.jpg?w=300" medium="image">
			<media:title type="html">2jzduinov0.1shieldB</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1_assyb.jpg?w=300" medium="image">
			<media:title type="html">2jzduinov0.1_assyB</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/2jzduinov0-1b.jpg?w=300" medium="image">
			<media:title type="html">2jzduinov0.1B</media:title>
		</media:content>
	</item>
		<item>
		<title>2JZduino v0.1 PCBs</title>
		<link>http://thedeltaecho.wordpress.com/2011/01/05/2jzduino-v0-1-pcbs/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/01/05/2jzduino-v0-1-pcbs/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 00:11:33 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=313</guid>
		<description><![CDATA[The PCBs made through DorkbotPDX&#8217;s PCB Order arrived in the mail today. I&#8217;m quite pleased with the quality of the boards. Not that I have that much experience with PCB fabrication, but these exceeded my expectations, and Laen&#8217;s prototyping service seems to be the best value ($5/square inch and you get 3 copies). Photo below&#8230;<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=313&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The PCBs made through <a href="http://www.dorkbotpdx.org/wiki/pcb_order">DorkbotPDX&#8217;s PCB Order</a> arrived in the mail today.  I&#8217;m quite pleased with the quality of the boards.  Not that I have that much experience with PCB fabrication, but these exceeded my expectations, and Laen&#8217;s prototyping service seems to be the best value ($5/square inch and you get 3 copies).  Photo below&#8230;<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/2jzduino0-1-pcb.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/2jzduino0-1-pcb.jpg?w=284&#038;h=300" alt="" title="2JZduino0.1 PCB" width="284" height="300" class="aligncenter size-medium wp-image-314" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/313/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/313/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/313/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/313/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/313/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/313/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/313/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/313/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/313/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/313/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/313/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/313/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/313/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/313/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=313&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/01/05/2jzduino-v0-1-pcbs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/2jzduino0-1-pcb.jpg?w=284" medium="image">
			<media:title type="html">2JZduino0.1 PCB</media:title>
		</media:content>
	</item>
		<item>
		<title>Raptor V and Intercooler Installation</title>
		<link>http://thedeltaecho.wordpress.com/2011/01/01/raptor-v-and-intercooler-installation/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/01/01/raptor-v-and-intercooler-installation/#comments</comments>
		<pubDate>Sun, 02 Jan 2011 04:50:48 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[my IS300]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=293</guid>
		<description><![CDATA[There was a lot of iterative fitting, measuring and fabricating, but I&#8217;ve finally got the Raptor V mounting brackets and the intercooler piping done. Pictures tell this story best&#8230; The Raptor mounts to a generic plate supplied by 928 Motorsports. I custom-built two pieces to attach to the side of the 2JZ engine via two [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=293&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There was a lot of iterative fitting, measuring and fabricating, but I&#8217;ve finally got the Raptor V mounting brackets and the intercooler piping done.  Pictures tell this story best&#8230;</p>
<p>The Raptor mounts to a generic plate supplied by 928 Motorsports.  I custom-built two pieces to attach to the side of the 2JZ engine via two existing bosses; one pre-tapped for an M10, and the other pre-drilled for an M10.  Also visible in some photos is the 3&#8243; hole drilled through the body sheet-metal and lined with rubber hose for the intercooler piping.<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0012_006.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0012_006.jpg?w=300&#038;h=214" alt="" title="DSC_0012_006" width="300" height="214" class="aligncenter size-medium wp-image-297" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0009_003.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0009_003.jpg?w=300&#038;h=249" alt="" title="DSC_0009_003" width="300" height="249" class="aligncenter size-medium wp-image-296" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0008_002.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0008_002.jpg?w=228&#038;h=300" alt="" title="DSC_0008_002" width="228" height="300" class="aligncenter size-medium wp-image-295" /></a></p>
<p>A third custom piece attaches the Raptor mount plate to the alternator bolt.  These components are all sized to align the pulley for the serpentine belt.<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0039_033.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0039_033.jpg?w=300&#038;h=248" alt="" title="DSC_0039_033" width="300" height="248" class="aligncenter size-medium wp-image-294" /></a></p>
<p>The inter-cooler is mounted to the crash-bar with M8 bolts and steel right-angle brackets.<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0015_009.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0015_009.jpg?w=300&#038;h=145" alt="" title="DSC_0015_009" width="300" height="145" class="aligncenter size-medium wp-image-298" /></a></p>
<p>The plastic liner for the front-left wheel-well gets a big hole for the inter-cooler piping pass-thru.<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0017_011.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0017_011.jpg?w=300&#038;h=214" alt="" title="DSC_0017_011" width="300" height="214" class="aligncenter size-medium wp-image-299" /></a><br />
<div id="attachment_300" class="wp-caption aligncenter" style="width: 310px"><a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0020_014.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0020_014.jpg?w=300&#038;h=145" alt="" title="DSC_0020_014" width="300" height="145" class="size-medium wp-image-300" /></a><p class="wp-caption-text">With the plastic belly-panel removed. looking from the middle of the car at the hole in the plastic liner.</p></div></p>
<p>Now with the inter-cooler plumbing installed&#8230;<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0021_015.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0021_015.jpg?w=300&#038;h=288" alt="" title="DSC_0021_015" width="300" height="288" class="aligncenter size-medium wp-image-301" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0024_018.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0024_018.jpg?w=300&#038;h=179" alt="" title="DSC_0024_018" width="300" height="179" class="aligncenter size-medium wp-image-302" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0029_023.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0029_023.jpg?w=300&#038;h=165" alt="" title="DSC_0029_023" width="300" height="165" class="aligncenter size-medium wp-image-305" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0025_019.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0025_019.jpg?w=300&#038;h=149" alt="" title="DSC_0025_019" width="300" height="149" class="aligncenter size-medium wp-image-303" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0027_021.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0027_021.jpg?w=300&#038;h=200" alt="" title="DSC_0027_021" width="300" height="200" class="aligncenter size-medium wp-image-304" /></a></p>
<p>I fabricated an aluminum heat-shield to fit between the intake filter and the exhaust manifold.  Also visible is the aluminum air manifold (with copper and brass fittings).  The manifold collects exhausts from the PCV, cooling air for the Raptor, and the Bosch bypass valve, and redirects it back into the compressor intake.<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0034_028.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0034_028.jpg?w=300&#038;h=261" alt="" title="DSC_0034_028" width="300" height="261" class="aligncenter size-medium wp-image-306" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0036_030.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0036_030.jpg?w=300&#038;h=248" alt="" title="DSC_0036_030" width="300" height="248" class="aligncenter size-medium wp-image-307" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/293/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/293/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/293/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/293/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/293/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/293/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/293/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/293/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/293/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/293/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/293/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/293/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/293/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/293/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=293&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/01/01/raptor-v-and-intercooler-installation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0012_006.jpg?w=300" medium="image">
			<media:title type="html">DSC_0012_006</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0009_003.jpg?w=300" medium="image">
			<media:title type="html">DSC_0009_003</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0008_002.jpg?w=228" medium="image">
			<media:title type="html">DSC_0008_002</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0039_033.jpg?w=300" medium="image">
			<media:title type="html">DSC_0039_033</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0015_009.jpg?w=300" medium="image">
			<media:title type="html">DSC_0015_009</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0017_011.jpg?w=300" medium="image">
			<media:title type="html">DSC_0017_011</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0020_014.jpg?w=300" medium="image">
			<media:title type="html">DSC_0020_014</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0021_015.jpg?w=300" medium="image">
			<media:title type="html">DSC_0021_015</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0024_018.jpg?w=300" medium="image">
			<media:title type="html">DSC_0024_018</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0029_023.jpg?w=300" medium="image">
			<media:title type="html">DSC_0029_023</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0025_019.jpg?w=300" medium="image">
			<media:title type="html">DSC_0025_019</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0027_021.jpg?w=300" medium="image">
			<media:title type="html">DSC_0027_021</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0034_028.jpg?w=300" medium="image">
			<media:title type="html">DSC_0034_028</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0036_030.jpg?w=300" medium="image">
			<media:title type="html">DSC_0036_030</media:title>
		</media:content>
	</item>
		<item>
		<title>Engine Bay Organization</title>
		<link>http://thedeltaecho.wordpress.com/2011/01/01/engine-bay-organization/</link>
		<comments>http://thedeltaecho.wordpress.com/2011/01/01/engine-bay-organization/#comments</comments>
		<pubDate>Sun, 02 Jan 2011 04:08:23 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[my IS300]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=282</guid>
		<description><![CDATA[Fitting a supercharger into the IS300 engine required a little more work and effort that I originally bargained for. The stock location for the ABS block is right in the path of where the compressor stage should sit, so it needs to move. And unfortunately the most convenient alternate location for the ABS block is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=282&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Fitting a supercharger into the IS300 engine required a little more work and effort that I originally bargained for.  The stock location for the ABS block is right in the path of where the compressor stage should sit, so it needs to move.  And unfortunately the most convenient alternate location for the ABS block is where the battery sits.  So, I set about moving the battery to the trunk.</p>
<p>It seems as though some Engineers at Toyota at one time thought the battery was going to be in the trunk from the factory; in the right side of the trunk there are two threaded studs welded into the body sheet metal, a tab with a thru-hole suitable for a grounding strap, and a drain hole with rubber plug ideal for a battery vent.  I purchased an MT-47 from Interstate Batteries; a liquid lead-acid battery with a sealed top and vent tube.  Note that vent tubes are a *must* for trunk-mount batteries to prevent explosive gases from collecting in the enclosed space.  The MT-47 fits nicely into the recessed well in the right of the trunk.  I fabricated a mounting plate out of aluminum bar stock that attaches to the existing threaded studs and mounts two eye-bolts so that the battery can be secured with a Nylon strap.  The battery vent runs down and out through the drain hole (lined with a rubber grommet) in the bottom of the trunk.</p>
<p>For the wiring, I ran #2 AWG from the battery to the engine bay (running it beneath the rear seat, along the passenger-side door sills, and then through an existing rubber grommet in the firewall, about 15&#8242; is needed).  A 175 AMP slow-blow fuse is connected within 12&#8243; of the battery +ive terminal.  A #4 AWG connects the battery -ive to the sheet metal tab in the trunk (cleaned with a wire brush to ensure good electrical contact), and a second #4 AWG runs up to the stock battery -ive connection point in the engine bay (following the same bath as the #2 wire).  Note that the stock starter is a 1400W motor (117A @ 12VDC).  I originally had run a #4 AWG for the battery +ive from the trunk but the voltage drop was too significant and resulted in what sounded like a dying battery every time I started the car.  (Refer to <a href="http://www.powerstream.com/Wire_Size.htm"> for further information on current ratings for conductors and a voltage drop calculator).</p>
<p>Next I set about relocating the ABS block.  This turned out to be easier than expected as each of the brake lines leading to the ABS block only needed to be bent to the new location (they didn&#8217;t need to be shortened and re-flared).  Care was taken to ensure that new bends in the brake line were in the virgin material to avoid fatigue cracks.  All bends were made with the smallest brake-line bending tool I could find ($10 at Princess Auto).  I also took the opportunity to flush the brake fluid, install braided SS brake lines, and refill with ATE Dot4.<br />
<div id="attachment_283" class="wp-caption aligncenter" style="width: 310px"><a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0049.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0049.jpg?w=300&#038;h=213" alt="" title="DSC_0049" width="300" height="213" class="size-medium wp-image-283" /></a><p class="wp-caption-text">Tube Bender used for ABS relocation</p></div></p>
<p>The images below show the results of the battery relocation&#8230;<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0043_037.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0043_037.jpg?w=300&#038;h=208" alt="" title="DSC_0043_037" width="300" height="208" class="aligncenter size-medium wp-image-285" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0044_038.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0044_038.jpg?w=300&#038;h=222" alt="" title="DSC_0044_038" width="300" height="222" class="aligncenter size-medium wp-image-286" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0045_039.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0045_039.jpg?w=300&#038;h=200" alt="" title="DSC_0045_039" width="300" height="200" class="aligncenter size-medium wp-image-287" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0047_041.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0047_041.jpg?w=240&#038;h=300" alt="" title="DSC_0047_041" width="240" height="300" class="aligncenter size-medium wp-image-288" /></a></p>
<p>and the ABS block relocation&#8230;<br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0041_035.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0041_035.jpg?w=300&#038;h=190" alt="" title="DSC_0041_035" width="300" height="190" class="aligncenter size-medium wp-image-284" /></a><br />
<a href="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0042_036.jpg"><img src="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0042_036.jpg?w=271&#038;h=300" alt="" title="DSC_0042_036" width="271" height="300" class="aligncenter size-medium wp-image-289" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/282/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/282/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/282/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=282&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2011/01/01/engine-bay-organization/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0049.jpg?w=300" medium="image">
			<media:title type="html">DSC_0049</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0043_037.jpg?w=300" medium="image">
			<media:title type="html">DSC_0043_037</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0044_038.jpg?w=300" medium="image">
			<media:title type="html">DSC_0044_038</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0045_039.jpg?w=300" medium="image">
			<media:title type="html">DSC_0045_039</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0047_041.jpg?w=240" medium="image">
			<media:title type="html">DSC_0047_041</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0041_035.jpg?w=300" medium="image">
			<media:title type="html">DSC_0041_035</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2011/01/dsc_0042_036.jpg?w=271" medium="image">
			<media:title type="html">DSC_0042_036</media:title>
		</media:content>
	</item>
		<item>
		<title>2JZduino PCBs</title>
		<link>http://thedeltaecho.wordpress.com/2010/12/08/2jzduino-pcbs/</link>
		<comments>http://thedeltaecho.wordpress.com/2010/12/08/2jzduino-pcbs/#comments</comments>
		<pubDate>Thu, 09 Dec 2010 01:23:01 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=276</guid>
		<description><![CDATA[I&#8217;m having my first custom PCB made for 2JZduino, using v0.3 of the code (which isn&#8217;t available as of this writing). It will support intercepting the IGT igniter signals to control ignition timing (instead of the v0.2 method which controlled ignition by intercepting the crank timing signal). The wiring inside my project box is getting [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=276&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m having my first custom PCB made for 2JZduino, using v0.3 of the code (which isn&#8217;t available as of this writing).  It will support intercepting the IGT igniter signals to control ignition timing (instead of the v0.2 method which controlled ignition by intercepting the crank timing signal).  The wiring inside my project box is getting messy enough that I don&#8217;t have much trust left in it to be reliable.  So these are the first steps toward eventually releasing the Eagle files and a Mouser order BOM for anyone that wants to build one of these for themselves.</p>
<p>The board is being made through <a href="http://www.dorkbotpdx.org">http://www.dorkbotpdx.org</a>.<br />
<a href="http://thedeltaecho.files.wordpress.com/2010/12/2jzduinov0-1-eagle-brd.jpg"><img src="http://thedeltaecho.files.wordpress.com/2010/12/2jzduinov0-1-eagle-brd.jpg?w=300&#038;h=169" alt="" title="2JZduinov0.1 Eagle BRD" width="300" height="169" class="aligncenter size-medium wp-image-277" /></a></p>
<p>The custom board allows for a much cleaner assembly and packaging job.  Below are a couple of solid model images of 2JZduino (semi) pupulated and packaged with an Arduino Mega.</p>
<p><a href="http://thedeltaecho.files.wordpress.com/2010/12/2jzduino-v0-1-pkg.jpg"><img src="http://thedeltaecho.files.wordpress.com/2010/12/2jzduino-v0-1-pkg.jpg?w=300&#038;h=101" alt="" title="2JZduino v0.1 pkg" width="300" height="101" class="aligncenter size-medium wp-image-278" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/276/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=276&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2010/12/08/2jzduino-pcbs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2010/12/2jzduinov0-1-eagle-brd.jpg?w=300" medium="image">
			<media:title type="html">2JZduinov0.1 Eagle BRD</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2010/12/2jzduino-v0-1-pkg.jpg?w=300" medium="image">
			<media:title type="html">2JZduino v0.1 pkg</media:title>
		</media:content>
	</item>
		<item>
		<title>Arduino Buck-boost converter</title>
		<link>http://thedeltaecho.wordpress.com/2010/12/08/arduino-charge-pump/</link>
		<comments>http://thedeltaecho.wordpress.com/2010/12/08/arduino-charge-pump/#comments</comments>
		<pubDate>Thu, 09 Dec 2010 01:05:20 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[2JZduino]]></category>

		<guid isPermaLink="false">http://thedeltaecho.wordpress.com/?p=270</guid>
		<description><![CDATA[[Edit: Previously posted as a "charge pump", I was corrected by a reader this circuit is actually a buck-boost converter...] If you&#8217;ve ever needed a negative voltage source for components connected to your Arduino, you might find this post helpful. I built a simple buck-boost converter circuit powered by the Timer2 Compare Match Output Unit [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=270&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>[Edit: Previously posted as a "charge pump", I was corrected by a reader this circuit is actually a buck-boost converter...]</p>
<p>If you&#8217;ve ever needed a negative voltage source for components connected to your Arduino, you might find this post helpful.</p>
<p>I built a simple <a href="https://secure.wikimedia.org/wikipedia/en/wiki/Buck-boost_converter">buck-boost converter</a> circuit powered by the Timer2 Compare Match Output Unit available on the ATMega 1280 (Arduino Mega).  The effort was part of troubleshooting related to the simulated crank sensor output.  I thought the stock ECU might need a voltage below ground to prevent noise from triggering extra zero-crossings, but this turned out to not be the problem.  So I discarded this as part of my circuit design but it was a breadboard exercise worth sharing.</p>
<p>First, note that I believe this interferes with the PWM functionality of the Arduino environment.  If you use other functions that reference Timer2, this will break them.</p>
<p>On the Arduino Mega the Compare Match Output Unit can be configured to toggle the value of pin 10 (port B4) at a particular frequency through hardware (i.e consuming zero processor cycles).  My charge pump design is configured for an input voltage that switches between 0 &amp; 5V every 0.4ms.</p>
<p><pre class="brush: cpp; wrap-lines: false;">
DDRB = B00010000;  // B4 (pin 10) is an output
TCCR2A = B01000010; // Toggle OC2A on Compare Match, CTC mode
TCCR2B = B00000011; // Timer2 prescaler = 1/32
OCR2A = 0xC8; // Compare Match @ TCNT2 = 200, occurs every 200*32/16MHz = 0.4ms
</pre></p>
<p>Below is a schematic for the converter circuit, drawn in LTspice.  V1 is Arduino Mega pin 10 (OC2A output).  R2 limits the current out of the Arduino.  When the output is ON L1 (47mH &amp; 82 Ohm) is energized, and when the output switches OFF, L1 pulls current from C1 (100 uF) through D1 while it discharges.  C1 is what stores the negative voltage. R3 is the load consuming this negative voltage.  It&#8217;s shown as 1k Ohms, but the circuit will maintain -0.5V for R3 values as low as 220 Ohms.  For high impedance loads, the circuit will generate approx. -2.7V.</p>
<p><a href="http://thedeltaecho.files.wordpress.com/2010/12/charge-pump-schematic.jpg"><img src="http://thedeltaecho.files.wordpress.com/2010/12/charge-pump-schematic.jpg?w=300&#038;h=197" alt="" title="buck-boost converter schematic" width="300" height="197" class="aligncenter size-medium wp-image-271" /></a></p>
<p>The voltage at C1 vs. time as simulated in LTspice is shown in the graph below (R3 = 1000 Ohms).</p>
<p><a href="http://thedeltaecho.files.wordpress.com/2010/12/charge-pump-v_c1-vs-t.jpg"><img src="http://thedeltaecho.files.wordpress.com/2010/12/charge-pump-v_c1-vs-t.jpg?w=300&#038;h=206" alt="" title="buck-boost converter V_C1 vs T" width="300" height="206" class="aligncenter size-medium wp-image-272" /></a></p>
<p>And that&#8217;s it.  4 lines of code and 4 components to generate a negative voltage.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thedeltaecho.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thedeltaecho.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thedeltaecho.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thedeltaecho.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thedeltaecho.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thedeltaecho.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thedeltaecho.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thedeltaecho.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thedeltaecho.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thedeltaecho.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thedeltaecho.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thedeltaecho.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thedeltaecho.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thedeltaecho.wordpress.com/270/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thedeltaecho.wordpress.com&amp;blog=12304443&amp;post=270&amp;subd=thedeltaecho&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thedeltaecho.wordpress.com/2010/12/08/arduino-charge-pump/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michael</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2010/12/charge-pump-schematic.jpg?w=300" medium="image">
			<media:title type="html">buck-boost converter schematic</media:title>
		</media:content>

		<media:content url="http://thedeltaecho.files.wordpress.com/2010/12/charge-pump-v_c1-vs-t.jpg?w=300" medium="image">
			<media:title type="html">buck-boost converter V_C1 vs T</media:title>
		</media:content>
	</item>
	</channel>
</rss>
