Saturday, August 27, 2011

Remembering Jim Williams .... Dead Bug Style!

I just finished reading Jim's last EDN article he wrote before he past away in June.

It is a great article that describes how to design a 2KHz Sine Wave Generator with less than 3ppm distortion that could be used as a signal source for ADC benchmarking. After reading I thought, man it would be fun to build this circuit up. I just didn't have many of the precision components just lying around in my junk box, so I settled for building up a less impressive 1KHz Sine Wave Generator with a whole lot more than 3ppm distortion.

While surfing the internet I came across a project on filear.com where he built up a function generator based around a LM324N. This looked like a great starting point for my project.

I jumped in and started up LTSPICE and got a circuit simulating based around the LT1001 opamp from Linear Tech. Jim worked at Linear Tech and I had a bunch of LT1001's lying around, so it seemed like a good part to base the circuit around.


R1 & R2 set the common mode voltage at 1/2 the supply. U1 is used as a threshold comparator and generates a square wave. U2 integrates the square wave and creates a triangle wave form with a period set by C1 & R4. D1-D4 provide some non-linear wave shaping to turn the triangle wave in to a pseudo sine wave.  U3 amplifies the sine wave and U4 provides a bit of buffering/drive.

I wanted to fit the 1KHz Sine Wave Generator in an Altoids box and run it off a 9V battery, so I carved up a piece of FR-4 and started soldering up the circuit using a "Dead Bug" style that Jim Williams used often. This style of prototyping is actually pretty quick; the base PCB is gnd and the ICs are flipped upside-down and glued in place. The wiring goes really fast and I had this built up in about an hour.

This circuit won't win any awards for being a super clean Sine Wave, but it will work perfectly good for a nice audio test signal or base band signal source for an RF project.

There is something just satisfying with soldering up a circuit and seeing it do what it is suppose to do without a single line of Assembly or C code being written.... R.I.P. Jim Williams!

Monday, August 22, 2011

Great EE Business Card Idea!

This is a neat Business Card idea I found on youtube. Wouldn't this be a great way to send your resume to potential employers.... too bad the HR dept would screen you out before your card ever made it to the Engineering Manager :(  ....non-techies!

Thursday, August 18, 2011

Thanks Touchstone Semi & Future Electronics!

Pretty Cool, that my low power 555 timer was the TS1001 Coolest Op Amp’ Design Competition Winner!


I was kicking myself for not entering Chris Gammell & Jeri Ellsworth's 555 Timer Design Contest a few months ago. They had some awesome entry's..... so I had 555 timers on the brain when I heard about the Touchstone Semi TS1001 opamp design competition.


Thanks again Touchstone Semiconductor & Future Electronics for putting on the competition, and to my wife for video tapping. I owe you a night on the town and a meal at Fogo de Chao for this one!



Friday, August 12, 2011

A Little Old School Display Hacking Going On!

I promise this will be my last Temperature Sensor & RTC Arduino mod post, but I love how Vacuum Fluorescent Displays (VFD) look and I had one just sitting at the bottom of my junk box waiting to get new life breathed into it.

This Noritake GU112x16G-7000 is a 16x2 Serial (RS232) Display and it just needed a little mod to get it working with my existing Arduino Uno setup. This VFD display expects a serial RS232 input, so I just added a single npn BJT inverter to the back of the display and I was able to get this working with just the Arduino's TX pin.
One thing to note is this VFD display is a bit power hungry and gives off a fair amount of heat, so mounting a DS1621 temperature senor undernieth it, probably wasn't the smartest thing I should have done.

Anyway, just a bit of Old School Display hacking... I need to get my Nixie Tube display all lit up next :P

Here is a link to my code.

Thursday, August 11, 2011

Paying my OSHW Membership Dues

The Open-Source-Hardware concept, even though it isn't a recent idea (people have been publishing "open" hardware in electronics magazines for decades), has been "repackaged" and marketed to the Hacker/Maker community just within the past few years. The Atmel AVR based Arduino and its add-on Shields are one of the largest OSHW projects existing today.

When I first heard about the Arduino Uno platform and Software IDE I loved the concept and I did what I normally do.... I jumped on ebay and looked for the cheapest Arduino Uno I could find and ordered it. When I got the Arduino Uno board I noticed right away that this wasn't one of the "Made in Italy" Arduino's from the original developers.... I had just purchased a clone.

This is one of the significant draw backs to the Creative Commons OSHW licensing... it is perfectly legal for a company to take the OSHW gerbers and AVL and make their own Arduino and sell it at a lower margin. At first it didn't really bother me that much, but as I started using example sketches and watching "free" tutorials on the Arduino I realized that I was leaching "free" resources from OSHW developers without financially supporting them by purchasing my Arduino from them. I am sure the Chinese Manufacturer that I bought my Arduino from wasn't adding to the community by posting tutorials or example sketches.

Anyway enough ranting..... I have finally paid my OSHW membership dues and purchased a new Arduino Uno from Adafruit along with a Wave Shield that I'll be playing around with in the up and coming weeks. It was an extra $15 more than the clone, but it was money well spent in my opinion.

Below is a great video from Dave Jones explaining the whole open hardware movement.


Saturday, August 6, 2011

Arduino Uno Clock and Temperature Monitor with LCD

The past month or so I've been playing with the Maxim DS1307 Real-Time-Clock and DS1621 Temperature Sensor ICs. I hooked them up to an Arduino Uno board with a Parallax Serial 16x2 Character LCD. I got both ICs working in separate sketches that I've blogged about previously, but I wanted one combined program.

Below is the result:


I cleaned up my code/sketch and you can download it here.



The hardware implementation is really simple since both ICs communicate to the Arduino via the 2-wire I2C port; only 5 connections are needed to the Arduino (+5V, GND, SCL [A5], SDA [A4], and TX [1])

I have the orange wire & LED hooked to the SDA line, just for debug.... I can see the light flicker when communication is happening to the ICs. The CR2032 battery & holder is actually soldered to the underside of the protoboard and fits nicely in between the boards when stacked.
I am pretty happy with how this project turned out; it was a great introduction to the Arduino for me.

Friday, August 5, 2011

Who is that guy?

EEweb is scrapping the bottom of the barrel for this week's featured engineer.

http://www.eeweb.com/spotlight/interview-with-eric-holland


Seriously, it is an honor and a privilege to be recognized for something I love doing; thanks EEweb.

Friday, July 29, 2011

TS1001 Enabled Low Power 555 Timer Design

Touchstone Semiconductor TS1001 Coolest Opamp Design Contest Entry

I thought it would be fun to redesign the 555 timer using two TS1001 Low Power Opamps as comparators. The goal was to make the 555 Timer run on supply voltages below 1V and less than 5uA, so I could use a “fruit” Battery or Solar Cell to power the 555 timer in astable mode.


I started out by running some quick simulations with LTSPICE to prove out my circuit and size the resistors accordingly, so I could meet my 5uA current draw limit.
At the time of this contest no SPICE file was available for the TS1001 Opamp, so I just used the “Universal”  Opamp in LTSPICE; the majority of the current draw in my circuit is from the charge/discharge of the capacitor anyway.

I quickly made up a breadboard version of my circuit and tested it out to prove the concept.
 
I have two TS1001’s as the comparators and a Texas Instruments SN74AUC2G02 Dual-Nor Gate for the SR Latch.

I used DesignSpark’s PCB CAD program to create a Schematic & PCB of the 555 timer.


 
 Below I have my Low Power discrete 555 Timer running off an orange at 0.87V @ 4.4uA. 
Below is the square wave output of the 555 timer and the charge/discharge of the capacitor. This circuit is running at 18.4Hz. 
 
That is one of the downsides with this circuit; I was able to get it to run at a max output frequency of 525Hz with a 1V supply voltage before it pooped out. That is the whole power vs. performance trade off. Diodes Inc. has a Low Power 555 (ZSCT1555) that runs up to 330KHz @ 75uA; mine runs at 18Hz at 4.4uA… trade-offs.

I was also able to get the 555 timer running off of a Solar Cell pulled from a Light up Lawn Ornament. 


I hope you enjoyed my project entry; I had a lot of fun and learned a few things along the way.

DesignSpark Schematic & PCB files: http://www.divshare.com/download/15412088-d84
Gerber files: http://www.divshare.com/download/15412090-835
LTSPICE files: http://www.divshare.com/download/15412094-1d6

Saturday, July 23, 2011

Everything Including the Kitchen (current) Sink!

With almost every project/design I work on there is a switch-mode PSU that needs testing. In order to quantify the switch-mode PSU's performance you have to load it down to typical and worst case load conditions. This will allow you to make sure the Inductor is properly sized, the ripple current is acceptable, and just to make sure the supply is stable. In the past I would either grab a variable power resistor box or buy some 25Watt resistors and just make a load brick for the project.

The down side with using resistors as loads is you have to buy new values of resistors for every supply voltage you are testing. There has to be an easier way.... and there is!

I got the idea to make a variable Current (Sink) Load from watching one of Dave Jone's EEVBlogs.

This Variable  Current Load takes out all the "Ohm's Law" guess work when applying loads. If I need a 0.5Amp load, I just adjust the pot to set 0.5V across my 1 Ohm Current Sense Resistor and I have a 0.5Amp load irregardless of the Load Voltage. The Load voltage could be +3.3V, +5V, +12V, +24V and I still have a 0.5Amp Load...GREAT!
I grabbed some spare parts I had in my lab and an Altoids case and started hacking. I stacked 3 different size heatsinks and attached them to the pass FET; this will help pull the heat away better.


The terminal block provides the +10V, 0V, and -5V supply voltages. The Bar Graph panel meter displays the load current from 0-5Amps. Below I am using my Current Load to test a Linear Tech Flyback PSU eval board..



This was a fun project and the current sink works really well. The 10 turn pot allows some pretty precision current settings. I am pretty pumped to use my new Variable Current Load on Monday to test my new project at work.

Friday, July 22, 2011

Super LDMOS RF Transistor

I wish I would have had these parts when I was working on that 100W 900MHz Microwave Generator project 5 years ago.... I would have burned up a few less $30 transistors.