Member Since: July 5, 2011

Country: United States



Electrical engineer

Programming Languages

Python, C/C++


NDSU 1997-2002


Toys, tinkering



Radio Shack is finally declaring bankruptcy, but for many of us, it died a long, long time ago

Continue reading

FTDI's latest driver update appears to be semi-permanently disabling counterfeit FT232 chips.

Continue reading

To compare the Edison and the Raspberry Pi is to do a disservice to both.

Continue reading

In which I buy a cheap truck, planning on using my hacking skills to keep it going, and the universe calls my bluff

Continue reading

When in New York, I found a small group of hackers in as surprising place

Continue reading

Quad Fever!

Quadcopter fever is spreading through SparkFun! Of course we're going to hack them.

Continue reading

How Python makes my life easier every day

Continue reading

Technological befuddlements it took me 10 years and a college degree to understand.

Continue reading

BC118 BLE Mate 2 Hookup Guide

January 15, 2015

Hooking up and using the BLE Mate 2, which uses the BC118 BLE module from BlueCreations.

Programming the Intel® Edison: Beyond the Arduino IDE

January 7, 2015

Intel's Edison module goes beyond being just another Arduino clone. Check this tutorial for advice on how to get the most out of your Edison by writing code in C++!

RedBot Sensor - Wheel Encoder

December 25, 2014

The RedBot Wheel Encoder allows you to track the number of revolutions each wheel has made. Learn how to assemble and work with the RedBot Wheel Encoder.

FemtoBuck Constant Current LED Driver Hookup Guide

October 16, 2014

The FemtoBuck board is a high-efficiency, single-channel constant-current LED driver.

Sunny Buddy Solar Charger V13 Hookup Guide

October 13, 2014

How to hookup the Sunny Buddy: a solar-powered, MPPT (peak-power tracking), LiPo battery charger.

FTDI SmartBasic Hookup Guide

October 3, 2014

How to use an FTDI SmartBasic Board to program an Arduino and access another serial device over the hardware serial port, without unplugging anything!

RedBot Assembly Guide Rev 02

September 2, 2014

Assembly Guide for the RedBot Kit. This tutorial includes extra parts to follow to go along with the RedBot Inventor's Kit tutorial.

MiniGen Hookup Guide

May 22, 2014

Using the MiniGen, SparkFun's Arduino Pro Mini signal generator shield

Understanding the BC127 Bluetooth Module

January 31, 2014

SparkFun has two boards using the BC127; here's what you need to know to use them.

Digital Logic

October 3, 2013

A primer on digital logic concepts in hardware and software.

MiniMoto DRV8830 Hookup Guide

September 19, 2013

MiniMoto is an I2C-based low-voltage DC motor driver.

Getting Started with the AutoDriver

September 9, 2013

SparkFun's AutoDriver is a powerful tool for controlling stepper motors. Here's how to use it.

PicoBuck Hookup Guide

August 30, 2013

The PicoBuck board is a high-efficiency three-channel constant-current LED driver.

Using GitHub to Share with SparkFun

August 19, 2013

A simple step-by-step tutorial to help you download files from SparkFun's GitHub site, make changes, and share the changes with SparkFun.

Getting Started with the RedBot

August 8, 2013

A simple introduction to SparkFun's RedBot robotics platform.


July 8, 2013

An introduction to I2C, one of the main embedded communications protocols in use today.

Leap Motion Teardown

June 27, 2013

Let's see what's inside the amazing new Leap Motion input device!

Programming the pcDuino

March 12, 2013

With great power comes great complexity. This tutorial will teach you some of the basic concepts needed to get the most out of programming your pcDuino.

pcDuino Hookup Guide

March 8, 2013

pcDuino is SparkFun's single-board hardware-hacker based mini PC. It comes with Linux pre-installed, has all the hardware functionality of an Arduino Uno, and can be programmed almost as easily as an Arduino!


February 7, 2013

Light is a useful tool for the electrical engineer. Understanding how light relates to electronics is a fundamental skill for many projects.

Connector Basics

January 18, 2013

Connectors are a major source of confusion for people just beginning electronics. The number of different options, terms, and names of connectors can make selecting one, or finding the one you need, daunting. This article will help you get a jump on the world of connectors.
  • Yes. Take a look at our schematic and change out the components to match what’s in the datasheet and you’ll have it.

    I’m not a big fan of that sort of charging, though, because the cells can become unbalanced, resulting in overcharging of some cells and undercharging of others.

  • You can connect this directly to an audio source for streaming over Bluetooth, or you can stream audio via Bluetooth to this and dump the output out to headphones or a single-ended line-in (like the aux port on most stereos or computers, for instance).

  • Yes, although you may be better off looking at the Purpletooth Jamboree, which includes the necessary hardware to accept a standard line-level input and an amplifier to convert the output to single-ended.

  • It’s not quite that simple. Please refer to the datasheet on circuitry changes needed to adopt this to charge a lead-acid battery. I think it can be done but you may need to change more than just the feedback resistors.

  • You could use three chargers and three solar cells, one across each cell. It’s possible to redesign the circuit on the SunnyBuddy to charge up to 3 cells in series but that would require changing a number of components. See the datasheet for more details on that option.

  • The SunnyBuddy will servo the output current in an attempt to keep the input current at a level where the value at that pin is 2.8V. It will never, however, source more than about 400mA to the load.

    Your best bet is to put a depleted LiPo on the SunnyBuddy, to max the charge current, then go out in full sun and tweak the pot until the sense voltage is at 2.8V.

  • Probably not. The SunnyBuddy only puts out up to 4.0V, so it can only charge a single LiPo cell. What you have is a pack of three cells in series.

  • What you’re looking for is called a “one-shot”. It turns a pulse input of an unknown length into a pulse output of a known length. There are a million and one ways to realize this, but here’s a snipped of Arduino code that will do it for you:

    void setup()
      pinMode(2, INPUT_PULLUP);
      pinMode(3, OUTPUT);
      digitalWrite(3, LOW);
    void loop()
      if (digitalRead(2) == LOW)
        digitalWrite(3, HIGH);
        delay(100);  // keep the pin high for 100ms
        digitalWrite(3, LOW);
        delay(5000); // Change this to be slightly longer than your longest file

    You can buy an Arduino Pro Mini for $10 and an FTDI Serial Basic for $15 to add this to your project.

  • Try debouncing the input, slightly. After you see a low-to-high transition, ignore all low-to-high transitions for about 15ms. There are frequently little jitters on the edges, caused by the way the edge moves in and out of the light from the IR transmitter.

  • Connect the load to the load header and the battery to the battery header.


SFUptownMaker 15 items

Wish list for the March 2014 SparkFun Live project: the HaterMat…

AutoDriver Hookup Guide

SFUptownMaker 38 items

This wishlist contains everything you'll need to follow along wi…