Been a while…

OK So, I’ve not posted on this site for a [VERY LONG] time but I hadn’t forgotten it. I’ve been involved in numerous projects that have kept me away from straight AVR projects. Not least ProjectHAB, my other website devoted to High Altitude Ballooning.

Still, I’ve now more time available to explore all things AVR and just in time too. The daughter of a friend of mine, lets call her Amelia, recently got interested in electronics after attending a few of her school’s general science lessons. They got her to build a very simple LED circuit. Triggered by a connection and lit via an SCR. An SCR (Silicon Controlled Rectifier, sometimes called a Thyristor) is a semiconductor that once switched on, will remain on until power is removed. This rather un-inspiring circuit got Amelia very excited about electronics! Her father and I have since stepped her through building a number of kits but in the longer term, I’d like her to become familiar with AVRs.

Enter the minDUINO!

minDUINO v1.4 on Gerblook

minDUINO v1.4 on Gerblook

This is my attempt at slimming down an Arduino board so that it is small, has an on board XTal oscillator and carries it’s own power supply, in this case a 7805 voltage regulator. I also managed to cram in both FTDI and ICSP headers for programming and breakouts for most of the AVR pins. My intention is to get Amelia to build this as a project and then use it to experiment with. Since the Arduino™ IDE is freely available on their website, she will be able to get started very quickly. Amelia’s father is a programmer so he will be taking her through the basics of the Arduino™ language.

I have ordered the minDUINO boards from the excellent Hackvana as per usual and I await delivery. I’m planning to do a review/test build once I have my hands on them. When I know the boards work and that I can demonstrate programming to Amelia, I’ll post the design here under Creative Commons/Open Hardware so that anyone can use the design.

Posted in Building | Tagged , , , , , , , , | Comments Off on Been a while…

Park Life

I have now had a lesson in patience. My PCBs arrived from OSH Park yesterday. They are of top quality. However, I should have checked over my design a few times before submission.

The first version of my Universal Arduino Programming Board with errors.

The first version of my Universal Arduino Programming Board with errors.

The first version of my Universal Arduino Programming Board with errors.

The first version of my Universal Arduino Programming Board with errors.

On the face of it, they look fine and again, I draw your attention to the very high quality that OSHPark attain. But if you take a look at this close-up image, you may spot the problems.

Universal Arduino Programming Board Version 1 Close-up view

Universal Arduino Programming Board Version 1 Close-up view

I have indicated with a red circle part of the issue. For some reason, Eagle didn’t alert me to the overlapping contacts here. Perhaps it did and I didn’t see it for what it was. A problem! Also, at the time I designed this PCB, I hadn’t found the ZIF Socket in the libraries. I thought it would be OK to use any 40-pin DIP pattern. Of course, what I failed to take in to account is that ZIF Sockets are wider than your average 40 pin DIP  device and I hadn’t given enough room for it.

I have tried to salvage something from this by making an adapter and trying to work out how to outboard the crystal oscillator but I think I’m going to chalk it up to experience and order my new version at some stage.

Universal Arduino Programming Board Version 2 rendered by OSHPark

Universal Arduino Programming Board Version 2 rendered by OSHPark

For this version, I took my time and found a ZIF Socket pattern. I’ve laid it out in a completely different configuration and spent some time to label things properly on the silk screen. Before I order any, I will check it again to make absolutely sure I have not made any mistakes.

A long time ago, when I was at school, an engineering teacher told me ‘Measure thrice, check twice, cut once only’. I should have put that into practice!


Posted in Equipment | Tagged , , , , , , , , , , , | Comments Off on Park Life

A Walk in the Park

As a slight detour from my own PCB making exploits, let me tell you about a couple of PCBs I’m having made commercially. I am a big fan of the Z80 microprocessor made by ZiLog and have had an itch to do some Z80 Machine Code programming for some time. I’m not sure exactly what I want to program but there you go! I discovered this really neat Simple Z80 Single Board Computer designed by a chap called Grant Searle. Having had some practice with EagleCAD PCB, I have designed it a layout and included an expansion connector too. The connector has pins for all the Data Bus, Address Bus and most of the Z80’s control Bus.

Simple Z80 SBC by Grant Searle

A Simple Z80 Single Board Computer

This is a render of my PCB layout. I am having it fabricated by OSH Park ( who accept Eagle .BRD files directly. This negates the need for Gerber files and makes the whole process really easy. At the time of writing, the price for 2 inches square is $10 and you get three of them which is the minimum order. Considering the time and materials it would take me to make my own board, I believe that to be very reasonable. I couldn’t solder so many Vias in any case! You can see OSH Park’s pricing on their pricing page. Another really useful feature of their service is that they have a set of design rules in Eagle format for download, allowing a Design Rule Check whilst you are designing your layout to check whether you are within OSH Parks fabrication limitations.

This is the second board I have sent to OSH Park. I also designed a simple Universal Programming Shield based on a prototype I made some time ago. Since ordering, I have spotted one issue though, see if you can spot it:

Arduino Universal Programming Shield

A shield to facilitate programming of AVRs and other chips.

Any idea? OK I’ll spill the beans… The ZIF socket is right next door to the pin headers. Unfortunately, the ZIF socket is wider than a standard IC socket by one set of pins on either side meaning, on this version board, I’ll have to use a standard socket. I would have used a ZIF Socket symbol in Eagle if I could find one! I have since updated the PCB design and I’m deliberating whether or not to have some made. A lesson there, check, re-check and check again BEFORE you send your file!

Many thanks to Charlie Robson who suggested OSH Park in the first instance. I have seen many images of OSH Park’s boards and they look great in their purple finish. When I have received the first batch (The Universal Programming Shield), I’ll review them here.

Posted in Equipment | Tagged , , , , , , , , , | Comments Off on A Walk in the Park

UV Exposure

The next step I had to take was to obtain or create a UV Exposure box. I had already had experience with one due to another interest but that model, while easily up to the task, was prohibitively expensive. I looked at a few other off-the-shelf models but I wasn’t willing to make such an outlay for a piece of equipment that would only be used occasionally.

I resolved to make one and started to do some research. My first thought was to use UV Fluorescent tubes but it wasn’t long before I came across designs using UV LEDs. LEDs have many advantages over fluorescent tubes. LEDs are tough and in general are less power hungry than tubes as well. I found some UV LEDs on eBay. 100 units for a few GB £s. I ordered two lots. I then went looking for a box. Again, eBay turned up trumps and I found an ideal pre-made wooden box. This was around £6 but it would cost me lots more in money and effort to make one. The last thing I needed, aside from some hook-up wire, was something to mount the LEDs on. Since the hole point of the excercise was to make PCBs, I wasn’t in a position to fabricate a layout so I ordered some strip board.

Box sourced from eBay

Box sourced from eBay

Once the parts arrived, I worked out, how much strip board I could fit in the lid and prepared the pieces accordingly. I then worked out, how many LEDs I could fit in equidistantly. I had a 9V power supply with enough uuumph! (Power) to supply a matrix of LEDs direct so I divided tracks up on the strip board to accommodate this. Each LED required 3V so three in series would be 9V. I divided across all of the boards and worked out where the links would need to be.

The open UV Exposure box

The open UV Exposure box revealing the safety switch and matrix of LEDs.

Close up shot of the LED matrix.

Close up shot of the LED matrix.

Whilst wiring all this up, I remembered that UV Light can be harmful. I’m not sure exactly how much damage these small devices could do but I wasn’t going to take any chances. I have heard tales of people being blinded by CD Rom LEDs so I thought it best to be safe. What I did was to engineer a safety cutout switch on the lid so that if the lid was opened during an exposure, the LEDs would immediately be extinguished. I found a micro-switch and bolted it to the front of the box.

UV Exposure Box Safety Switch on the lid of the box.

UV Exposure Box Safety Switch on the lid of the box.

I then bolted a soft block of sponge on the opposing side to trip the switch. When closed the switch completes the power circuit, and when open, it breaks the connection.

UV Exposure Box Safety block.

UV Exposure Box Safety block.

The last step was to feed a power line out which I did at the lower side of the lid. This is plugged into the output of the timer. I was going to design a timer and build one on strip board but I came across a timer kit from Evil Mad Scientist which would do the job. I ordered this and once arrived, I built it and housed it in a box I had lying around.

UV Exposure Box Timer from Evil Mad Scientist

UV Exposure Box Timer from Evil Mad Scientist

The timer is set to 3 minutes which I have found to be optimum for the process that I use. The timer board has DIL switches to set the time, although these could be made in a different fashion if you wanted complete control over the time value. The power for both the timer and the LEDs is fed into the left hand socket and the timed power emerges from the right and all that’s needed is to press the switch to initiate the exposure.

Next time, I’ll explain a simple exposure frame for transparencies and PCB material.

Please Note: UV (Ultra Violet) Light is harmful. It is not advisable to look at or be exposed to UV Light. If you choose to build a project like this, take sensible safety precautions and always face UV Light Sources away from yourself and others (this includes animals!) before applying power.

Posted in Equipment | Tagged , , , , , , , , , , , | Comments Off on UV Exposure

Creating a PCB

To create a PCB (Printed Circuit Board), I was going to use pre-sensitized material. That is to say that the PCB has a layer of UV sensitive material applied on to of the copper layer. To create a circuit, a transparency of the layout is temporarily fixed on to the board and it is then exposed to Ultra Violet light. Any parts of the board that are exposed become soluble in diluted Sodium Hydroxide* (Caustic Soda) and parts that are covered are less so. The effect is that once the board has been exposed, you can ‘develop’ it. Any of the pattern that is left acts as a resist for the next stage which is etching.

UV Exposed PCB

A PCB that has been exposed to UV light through a layout transparency.

This image is of the first version of the Component/Transistor tester, drying off after having been ‘developed’ in dilute Sodium Hydroxide.

Before I could perform this step, I needed to be able to make an exposure in a safe way. UV Light in concentration can be dangerous so I took that into account. I scouted the internet again and was interested to see several designs that used UV LEDs instead of glass tube bulbs. I found a batch of 100 UV LEDs on eBay and ordered two packs. I then found a likely box and thought about how to create a safe UV Exposure box.

*PLEASE NOTE: Sodium Hydroxide and Ferric Chloride are very dangerous materials and should only be handled by adults and with appropriate safety precautions. Always wear protective gloves and glasses.

Posted in Uncategorized | Leave a comment

Starting Out

I’m not sure what others would say but sometimes, I just get the urge to make something. I’ve been interested in Electronics since I was a young boy. My father taught me to solder at the age of seven (with a gas hob heated soldering iron!). So, I’m no stranger to components and building electronic projects. I’m also a radio ‘ham’ callsign G0TDJ.

Last year (2012) I became aware of AVR devices, specifically on the Arduino platform. These are amazing devices which you can turn to many tasks. Unlike the 8-bit microcomputers that I learned to program in the 80s, these devices are computers on a chip. They are termed Micro-controllers.  There are many types but all have flash rom and static ram space. Since this is all included in one chip, amongst other things like I/O (Input/Output) ports, they are pretty simple to build a circuit around and run. Programming is carried out with a few pins on the chip and is made even easier with the free Arduino IDE (Integrated Development Environment) software. Just a mouse click compiles your program and uploads it to the AVR device on your Arduino board.

I experimented with a couple of Arduino boards, namely the Uno and Mega types, just simple stuff like getting LEDs (Light Emitting Diodes) to flash on and off. I built a few things I found on the internet. There are many many designs online! This gave me a familiarity with the hardware and software. But, like so many things I’d learned before, I needed something to work towards. A goal. A project which would lead to something tangible rather than just a casual familiarity.

I begun to look for a project to satisfy my ‘itch’. I started to notice a certain project turn up again and again, built by many people in lots of variations. It was Markus Frejek’s Transistor Tester. Now, that page is in Markus’ native German but you can get Google to translate it. It works reasonably well in English. I can’t comment on other languages because I don’t speak any, mores the pity!

I was inspired by this project. It isn’t too complecated and utilized an AVR just like the Arduinos. It had been a long time since I had made a circuit, especially from the ground up so I resolved to do this. I vaguely remember making a PCB (Printed Circuit Board) with some Press-and-Peel transfer material but I was never satisfied with the results. I wanted to produce something professional looking. I resolved to use photo-sensitive PCB with UV (Ultra Violet) light. This would give the best results.

At this time, I had no UV Exposure box, no idea how to develop the PCBs (I had etched them before so I assumed Ferric Chloride was used in this case also) and no way of programming the AVRs outside of the Arduino platform which I thought would be needed. All this required careful consideration.

Posted in Introduction | Tagged , , , , , , , , , | Leave a comment

First Post – Hi

This is my attempt to document the learning process and construction of a Transistor Tester based on an Atmel AVR chip and designed by Markus Frejek. There are many variations of this project online but I wanted to show how I had to overcome several issues, one being my lack of any way to make a PCB (Printed Circuit Board), and come up with a final working result.

I will try and keep each blog post about one or a part of one component in the development. These include:

  • An LED UV (Ultra-Violet) Exposure Box
  • Exposure Timer
  • An AVR Programmer
  • Working with Eagle CAD PCB

Development continues and at the moment, I’m trying to develop an SMD (Surface Mount Device) version of the PCB.


Posted in Status | Tagged , , , , | Leave a comment