Something A Bit Different

Whilst waiting for the minDUINO v1.5/6 boards to appear, I took part in my local radio club’s DF Hunt (Direction Finding – Find the hidden station). As it is, myself and my team colleague, Ian G7PHD won the contest! Although we won, it wasn’t easy. The problem was that we didn’t have a measured of attenuating the transmitted signal for when we started to get closer to the hidden station. This meant that the signal got so strong, wherever we pointed our antennas, the signal was very strong and wouldn’t indicate a direction. I did use the trick of covering the antenna on the receiving radio with my hand but it’s a stop-gap measure. It did turn out to be effective in this instance but a proper switched attenuator would have made life a lot easier.

So, I decided to find a design and make a layout. I searched online and found a likely circuit – here. This is a standard kind of design and exactly what I was looking for. As  I started laying the circuit out in Eagle, I found that no DPDT (Double Pole, Double Throw) switches had a symbol that matched the way the circuit was laid out. So I found one that was close and made a custom part. I have had to do this several times recently so it wasn’t too much of a task. There are tutorials on YouTube and such for this procedure.

Once I had the schematic laid out, I proceeded to lay out a PCB. This turned out to be pretty easy and all on one layer too.

RF Stepped Attenuator Gerblook Preview

RF Stepped Attenuator Gerblook Preview – Top

This is a Gerblook preview. You can see the tStop lines of exposed copper. This is to solder shims on to shield each individual section to isolate them from each other signal wise. There are similar ones on the back but there is a gap where the connection goes through.

RF Stepped Attenuator Gerblook Preview

RF Stepped Attenuator Gerblook Preview – Bottom

I was intending to cut a ‘V’ shape to allow room for the connection to run under the shim rather than use two separate pieces.

Timing being what it is, a friend of mine, Tony G1HIG, just happened to be selling a Hatfield RF Attenuator just as I finished this design. So I bought it.

Hatfield Attenuator

Hatfield Attenuator purchased from Tony G1HIG

This means that I won’t be getting this board fabricated and I’ve no idea if the design is viable. However, I’ll leave it for you to decide. You can access all the design files here: RF Attenuator I haven’t tidied them up as I would normally because I’m not going to use them but they should be adequate for fabrication. I use the fantastic Hackvana for all my PCB fabrication so the files have been DRC checked with them in mind.

The design is given freely with no warranty or statement of fitness for use. Build and use entirely at your own risk.

Posted in Building | Tagged , , , , , , , , , | Comments Off on Something A Bit Different

minDUINO v1.6 Sneak-Peek

I’m getting ahead of myself here but I thought I’d post a quick preview of the minDUINO v1.6 board. The main target here was to accommodate a 28-pin ZIF socket for programming purposes. The 3M ZIF Sockets have a rather larger footprint than a standard IC Socket and therefore, a major redesign was in order to fit it in.

minDUINO v1.6 with ZIF Socket

minDUINO v1.6 with ZIF Socket

In the above Eagle preview, I have added my own custom 28-pin ZIF outline to facilitate arranging the other components around it. I wanted to centralise the ZIF socket rather than have part of it over-hanging the board’s outer edge. Another modification was to enlarge the pads and holes because the ZIF sockets pins are larger than a standard ICs.

As you can see, I have moved most of the supporting components to some degree. The ICSP and Breakout headers are now close to the right-hand edge of the board. I also combined a HC49 type outline with a resonator part since they share similar pitch. You can use either on the board. If a resonator is used, C1 and C2 can be omitted since resonators have the capacitors built in.

The only real compromise I had to make was to delete the bottom right-hand mounting hole. There just isn’t enough room for it. Since these are primarily meant for occasional programming or experimenting, I was content to leave it off. It is a simple thing to put a rubber foot under that corner of the board if necessary.

Once the minDUINO v1.5 boards have arrived and been proven, I’ll order some v1.6 boards and post the design files accordingly.

Posted in Building | Tagged , , , , , , , | Comments Off on minDUINO v1.6 Sneak-Peek

minDUINO Update

I always find that my designs evolve over time. There’s always something that can be improved upon. It’s only when you can use a board in a real life context that ideas for improvements spring to mind. That added to any fixes that a particular design requires.

The minDUINO v1.4 board had a couple of mistakes on it. I had placed a component in the wrong place on the schematic and reversed a couple of connections. These have been fixed in the newer v1.5 design. I also finessed the board a little. I tried to make extra room should I wish to fit a ZIF socket but this will require more work. I’ve re-numbered the LEDs and provisioned the board with an option for a resonator instead of a crystal so that the builder can choose which they prefer.

I have ordered the new boards from my favorite fabricator, Hackvana, who consistently produces great quality PCBs. The turnaround isn’t too bad either. This time, I’ve decided to see what the board looks like in red.

minDUINO V1.5 Gerblook Preview

minDUINO V1.5 Gerblook Preview

You can find all the new files on the minDUINO v1.5 page linked on the tab above.

Posted in Uncategorized | Comments Off on minDUINO Update

minDuino v1.4 is live

I’m pleased to announce that I have received the minDUINO boards from Hackvana, built and tested one and all is well! You can download all the design files from the tab marked minDUINO v1.4 above. I will be adding directions on how to program the board via it’s ICSP port later on.

minDUINO v1.4 Assembled

minDUINO v1.4 Assembled

The first thing I did once the board was assembled was to program it with the obligatory ‘Blink’ program, closely followed by ‘Fade’ to demonstrate the PWM capabilities of pin D10 (Physical pin 16). I’m very pleased with the board and I’m looking forward to seeing Amelia build her kit which I have put together from stock components.

The minDUINO will also form the central part of a Reflow Oven Controller which I’m currently developing. I have a cheap and cheerful toaster oven obtained from Currys/PC World for the princely sum of £24.99. The controls allow you to set the oven always on and full power. The idea behind my controller is to utilise this setting and control the heater elements with some sort of PID model programmed into the AVR. PID (Proportional-Integral-Derivative) to quote Wikipedia: “A PID controller calculates an error value as the difference between a measured process variable and a desired setpoint. The controller attempts to minimize the error by adjusting the process through use of a manipulated variable.” This is rather more complicated than a thermostat! Stay tuned for updates.

 

Posted in Building | Tagged , , , , , , , , , | Comments Off on minDuino v1.4 is live

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 (www.oshpark.com) 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