24 May 2013

How to Do ISP Programming – Part 4: Fuses and Troubleshooting

Setting Fuses
As mentioned before, fuses are used to set a couple of things that might need to be set before the actual software starts to run. As a beginner you should not tinker with most of those settings, because it is possible to lock yourself out of in-system programming.

How to Do ISP Programming – Part 3: Software Usage

Installing the Software
As mentioned, there are many options when it comes to software. One standard program, which is available for many operating systems is avrdude. Unfortunately, it is a command line tool, which makes it less than ideal for beginners. But there are GUI frontends available. I decided to use AVRDUDESS for this tutorial. And it is quite easy to use.

23 May 2013

How to Do ISP Programming – Part 2: Hardware Considerations

What Hardware do I need?
Obviously you need the controller. This can be any Atmel ATtiny or ATMega. You need a circuit board to put the controller in (the "target board") and you need an ISP programmer. Since ISP uses a serial format, the programmer can be rather compact.

20 May 2013

How to Do ISP Programming – Part 1: The Theory

Many of my projects use AVR controllers from Atmel. And they need to be "programmed". This means that the software needs to get written into their internal program memory.
For beginners, this can be a major stumbling block in any project. And I do get lots of questions in connection with programming. So I decided to write this tutorial. But my intention is not just to give a list of buttons you have to press. Instead I want you to understand what you are doing.
This tutorial assumes you have a Windows PC and use an USBasp programmer. They are available from your favourite auction website (very cheap, ready made, from China). Alternatively you can support their creator Thomas Fischl and buy his kit.

2 May 2013

Another simple electronics project for kids

Project Features

  • Simple
  • Cheap
  • Doesn't take long
  • Can be done by children (with a little help)

One of my sons recently started to nag me. He wanted to solder something. Initially I had no idea what he could solder and I thought he was simply bored. But he kept going and I knew I had to find something. Finally I remembered that it would be "Blue Night" soon and that I wanted to take my kids there. So we could build some coloured light object to be worn at the event.
I looked through my unused hoard of components and found the bag with one hundred rainbow LEDs (i.e. slow colour changing LEDs). I had ordered them from China for little money - for no good reason really... 
And so was born the idea to build a little pendant of 3x3 LEDs.

10 April 2013

Connecting an ISP Programmer to an ATMega8

Several people asked me how you connect an ISP programmer to an ATMega8. It never occured to me that this could be a problem for anyone. But anyway, here is a schematic.

Over time, I will write a tutorial on how to program AVR controllers.

Please note that the header shows Atmel's standard pinout for the 10-pin ISP header. Most programmers use that same pinout. But to be safe you should check your ISP programmer's manual.

I hope this is useful for someone!

2 April 2013

A Beginner's Guide to Driving LEDs - Part 4

The transistor as current source

In part 3 of this tutorial we looked briefly at several current sources, which contain integrated circuits. In this part, we will look in more detail at a simple current source built from a transistor, a zener diode and two resistors.

31 March 2013

A beginner's Guide to Driving LEDs - Part 3

Actively Stabilizing the Current
In part 2 of this tutorial we found that there are situations, when a simple resistor is not good enough to keep the current through an LED stable. There are countless ways to stabilise the electrical current actively. Some are simple, some are complicated. I will show a few here.

24 March 2013

A Beginner's Guide to Driving LEDs - Part 2

Resistance is not futile...

Part 1 of this tutorial showed why using an LED is not as straight forward as using a light bulb. Now we have a look at different ways to operate an LED.
The simplest and well known way to operate an LED is to add a series resistor. It is quite easy to determine the value for this resistor:

A Beginner's Guide to Driving LEDs - Part 1


LEDs are just great. Nowadays they are cheap, durable and power efficient. You get them in all colours, shapes and sizes.

But along with all the advantages comes a disadvantage, too. LEDs have special demands when it comes to their power supply. In most cases, this is not too bad. But many beginners in electronics have problems to understand those requirements. With this post I would like to help those people to get an intuitive understanding of how to use LEDs. I will keep it simple, but hopefully still useful.