Project SC300 Road Racer: Part 16 – We have ignition!


Here’s the configuration of the left (driver)-side headlamp output.

Since this is an output we’re actually going to use, the fields are not greyed out and we need to think a little bit about what we want to achieve here.  First, the current information. This is a low-beam headlamp, but that doesn’t mean low current. We’re only driving one bulb with this output, and we didn’t measure the current draw beforehand. So, we just chose an arbitrary value (5A). The Smartwire provides great tools for viewing the current and voltage on active circuits, so we can figure out the real draw later.

The fuse reset delay is a nice feature. The Smartwire uses “digital” fuses that are tripped automatically. The reset delay is how long the Smartwire will wait on a tripped fuse before it attempts to re-activate the circuit. The fuse retries tells the Smartwire how many times to try again before it gives up and leaves the circuit off. These features could mean the difference between being able to get back to the pits and getting stuck out on the track.

Second, the output type. Since this is a headlight, we want it to be on as long as the switch is on, so we choose “Constant On”. There are actually a number of circuit activation styles:

  • Constant On – if the condition is true, the output is on. Otherwise, it is off.
  • Flash – if the condition is true, the output will turn on and off. The cycle rate is configurable.
  • Latch On – when the condition is true, the output latches to on and stays that way until the Racepak is turned completely off
  • Single Pulse – when the condition is true, the output will wait to go on for the specified delay, and then will stay on for the specified duration. The condition will have to become false again after the specified duration before the pulse will activate again

The last output type is a very special one: Windshield Wiper. This is only available on output channel 19 (Racepak connector A pin 17). Unfortunately for me, I made a bone-headed mistake in the wiring harness design and routed the wiper output to Racepak connector B pin 23. Why is this a problem?

The Smartwire includes special circuitry which allows it to utilize an OEM-style wiper park switch in order to return the wipers to their parked position, just like on a street car. However, this feature is only available when the wiper control is using output channel 19. Since we didn’t use output 19, our wiper park input unfortunately is useless. We have two options.

We could de-pin connector B pin 23 and run a jumper wire to connector A pin 17, or we could just not use the park feature. For now, we’ll just not use the park feature. Since I’m not using the park feature, I could de-pin the wiper park signal input and free it up to use it for something else, but I don’t need that right now, either. I just have to remember to flip the wiper switch when the wipers are down. Oh well!

Once you figure out the output type you want (in this case, Constant On for a headlight), you then need to configure the on condition. This is pretty easy if you have a rudimentary understanding of computer/digital logic (AND and OR).


This is the on condition configuration screen for our driver-side headlamp.

The on condition configuration really isn’t that complicated. For the driver-side headlamp we want the lamp to be on when the switch we call “Lights” is on. The first step is to define the channels that might be used to control the output. In this case, we actually have two channels that might control the headlamp: Lights and Func. We’ll get to Func in a moment.

Once the possible control channels are selected, you then configure the status of those channels that you are looking for. You can see that we are looking for the control channels’ status to be “equal to 1”. In the case of the Smartwire Switchpanel, turning a switch on makes the channel status “1”. In the case of our hard-wired inputs, we’ve configured all of them to be ground triggered. The steering wheel switch labeled Func will ground when pressed. So, pressing the Func switch will set the channel called Func to “1”.

Last, you configure the logic for the on condition. In our case, we have two possible conditions to turn on this circuit.

  • If the Lights switch is on, turn on the driver-side lamp output channel


  • If the Func switch is on, turn on the driver-side lamp output channel

So what is this Func thing all about? Since our car will be used in multi-class racing, with slower and faster cars on track at the same time, we can use this switch on our steering wheel to flash the lights. The lights will be on only while Func is pressed (if the Lights switch is off). So we can drive around pushing Func and flashing the lights to our heart’s content.

We can also quickly reconfigure and reprogram the Smartwire to make Func do something different. For example, we could make Func act as a horn button, since we have the horns wired up.

One more thing. Since we had a single output dedicated for each headlamp, we need to repeat all of this configuration for the passenger-side headlamp as well.

Here are a few more examples of channel configurations and logic we need:

  • When the fuel relay input is on, turn on both the fuel pumps (Radium / Fuel Safe surge tank pump and the high pressure pump)
  • When the brake pedal is pressed (and the brake lamp switch is on), turn on the brake lamps
  • When the Lights switch is on, turn on both headlamps and both tail lamps
  • When the Hazard switch is on, flash the left and right side blinker lamps
  • When the Electronics switch is on, the Haltech harness pink wire should be powered, the AEM dashboard should be powered, the Haltech WBC-1 should be powered, the Autosport Labs logger should be powered, the alternator IG should be powered, and we needed to power the circuit for the steering column motors

The blinkers are actually one of the more complicated power circuits on the car. Why?

  • Either the left blinker switch or the hazard switch should activate the left-side blinkers
  • Either the right blinker switch or the hazard switch should activate the right-side blinkers
  • The blinker outputs need to be flashing outputs

You can make some pretty interesting combinations of logic to control circuits. In fact, when used in combination with Racepak’s V-Net data recorder and sensors, you can even use sensor values to directly control circuits. Where we will have the Haltech ECU controlling the cooling fans based on the ECU’s knowledge of the coolant temp, the Racepak could do this directly via a V-Net fluid temperature sensor hooked in.

That’s pretty much all there is to input and output configuration on the Smartwire. We looked at our I/O spreadsheet (you do have an I/O spreadsheet, right?) and made sure we properly named and configured all of the inputs and outputs. It only took an hour or two. We also did this with everything disconnected at the other end. We didn’t plug in any of the lights or pumps or other powered circuits. This way, when it came time to test the inputs and outputs, we could use our multimeter to make sure everything was OK.


Here’s the main Smartwire configuration area where you can send and/or read the entire device configuration at once.

Once everything was set in the software we came to this page and hit “SEND Configuration” to send the programming into the Smartwire unit. This takes a few moments. Once done, we were ready to go ahead and do some testing.

Leave a Reply

Your email address will not be published. Required fields are marked *