ICSP Test Rig

On a whim, I bought a Maplin project to build. I needed an audio signal generator for something I’m planning and the £15.99 Function Generator Kit seemed to fit the bill. I have a very local Maplin shop where the staff know me by name and I was passing by today so I picked one up. This particular board attracted me because it utilises an ATTINY2313 chip as a generator along with a resistor lattice.

It took around 45mins of careful construction after which I had a very functional Audio Signal Generator.

Maplin Function Generator Kit

Maplin Function Generator Kit

Oscilloscope Scans

Oscilloscope Scans

I did wonder though; Had the ATTINY’s lock fuses been set? AVRs have special fuses in them which allow the programmer to ‘Lock’ the chip after programming, preventing anyone from reading the code. The Function Generator PCB didn’t have any provision for ICSP (In Circuit Serial Programming) so I had a look around the workshop to see if I could make a testing jig. Something that would be useful in the future. I settled on a small, inexpensive prototyping PCB I had bought. I mounted sockets for 28-pin and 8-pin chip variants and a set of headers along each side to access the chips pins. I then soldered sets of three connector headers above and below to act as power rails. I also bridged the power rails into the prototype boards inner rails so the power would be available at both ends of the board.

Chip Test Jig Top

Chip Test Jig Top

Chip Test Jig Bottom

Chip Test Jig Bottom

Once I had checked all the solder joints, I mounted the ATTINY from the Signal Generator on the test board and connected the relevant pins up by checking the datasheet. I had already made a back-to-back ICSP adaptor to use flying leads with my AVR ISP MkII. This allows connection via flying leads rather than the 6-pin ICSP connector provided by the programmer.

6-Pin Back-to-Back Adaptor

6-Pin Back-to-Back Adaptor

Connecting the flying leads

Connecting the flying leads

I connected the flying leads to the AVR ISP MkII via the back-to-back adaptor and fired up the jigs power. I plugged the AVR ISP MkII into the USB port of my PC and I was pleased to see a green light indicating that all was well.

AVR ISP MkII Connected

AVR ISP MkII Connected

I then loaded AVR studio and connected to the programmer. I was astounded to find that the lock fuses had not been set and that I could freely do a dump of the Flash area! I checked the EEPROM area too but there is no data there. I have kept a ‘backup’ of the flash to study and in case I need to program a replacement chip.

Posted in Building, Tools | Tagged , , , , , | Comments Off on ICSP Test Rig

ICSP Pogo Pin Programming Adaptor

Driven by my frustration at not being able to find a reasonably cheap supply of 2x3pin shrouded header sockets, I have knocked up an adaptor to avoid using them altogether. This is not a new idea and I’ve seen a few variations online before. However, I wanted to make one with the materials I had available. I don’t like stripboard much but I have a supply of it to use up so I decided that was the way to go. The theory of making it is quite easy, the practice is something else. I believe this is the most fiddly project I’ve ever undertaken.

ICSP Pogo Pin Programming Adaptor

ICSP Pogo Pin Programming Adaptor

The design I came up with requires two pieces of stripboard, each with 12×7 holes available. On the top layer goes (from left to right) a 6-pin male header with all the pins pressed down as far as they will go. A shrouded 6-pin header socket. Three short hook up wires and six 1.36mm Pogo Pins (I sourced these from eBay).

Header Preperation

Header Preparation

To prepare the header, use a pair of pliers to press down the black plastic against a firm surface. I used my workbench.

Next, make the relevant cuts in the stripboard. Remember to make a cut between the pins of the shrouded socket. Three cuts in total on the top layer and one on the bottom layer between the Pogo Pin positions. Also be aware that my illustration is looking from above.

You will then need to drill out the six Pogo Pin holes to 1.36mm. The standard strip board holes aren’t large enough. I used a small Dremel-like drill in a small drill press to accomplish this. The holes need to be absolutely vertical otherwise it will cause registration issues later on with the pins. Finding it very difficult to measure the drill bits I have, I did a few test holes on a gaff piece of stripboard to ascertain the correct bit for the job.

Once you have done these steps, you can proceed with the assembly. Brace yourself, it’s a really difficult process! Not kidding.

The first thing I did was to solder the 6-pin spacing header, the one you pressed the plastic down on. Then solder the shrouded header socket. Now the fun begins; Because the Pogo Pins will only go through the enlarged holes one way, you need to feed both boards onto them at the same time from the back. But you still have to leave enough room for soldering the top layer. I managed to get the bottom layer to stay above the copper coloured part of the Pogo Pins to give me enough room…eventually. I set the inverted board down on a level surface and used the shrouded header socket to keep it so. All Pogo Pins should align at roughly the same place. This is important so don’t rush it. You may need to encourage one or two of the pins to get them all aligned properly.

Very carefully solder the Pogo Pins taking care not to bridge across either your cuts or between the tracks (I managed to do both!). It’s worth mentioning I used the thinnest soldering iron bit I could whilst doing this.

Preparing to solder the Pogo Pins

Preparing to solder the Pogo Pins

Once you have successfully soldered the pins, you need to solder three small hook-up wires between the shrouded header connections and the far end Pogo Pins. The first diagram indicates this. By the way, can you spot the obvious mistake in the above image? Answer later on…

Once you have got this far, you can feed the board down the Pogo Pins and align it with the back pins on the header. This header helps to align the two pieces of stripboard correctly. Be careful not to stress the Pogo Pins at this stage. Again, take your time. Once you have fed the board down, you can solder both the header pins and the Pogo Pins.

Pogo Pins and Back Header Soldered

Pogo Pins and Back Header Soldered

ICSP Pogo Pin Programming Adaptor - Side View

ICSP Pogo Pin Programming Adaptor – Side View

Completed ICSP Pogo Pin Programming Adaptor

Completed ICSP Pogo Pin Programming Adaptor

Hopefully your adaptor will now look like this without the rather obvious drilling between the hook up wires and the Pogo Pins. This was the mistake I alluded to earlier. I’d forgotten one of the cuts. After assembly, the only way I could break the connections was to drill them out. A lesson learned!

ICSP Pogo Pin Programming Adaptor in Action

ICSP Pogo Pin Programming Adaptor in Action

Still, after all the trials of making it, the adaptor does work and it will save me a bundle in 6-pin shrouded header sockets. I just don’t want to have to build another!

Posted in Building, Tools | Tagged , , , , , , | Comments Off on ICSP Pogo Pin Programming Adaptor

Last of the line?

Having now designed and proved the minDUINO v1.6 board, I’m intending to mount one on a box with a breadboard for rapid prototyping. However, it struck me that it wouldn’t be too difficult to add either a daughter board that would sit on the GPIO header (like the VAYU_NTX Expansion boards) or to add a prototyping area to the board. I elected to add a prototyping area and the result is this:

minDUINO v1.7 - Gerblook Preview

minDUINO v1.7 Prototyping Edition – Gerblook Preview

I based the prototyping area on several boards I have seen sold commercially and also added the newly created minDUINO logo and the ProjectAVR wordmark. The silkscreening for the prototype rails and connections is copied on the back of the board where the Creative Commons BY-SA and Open Hardware logos reside.

I have ordered the boards from my favorite fabrication house, Hackvana and as soon as they have arrived and I have double-checked they are OK, I will publish the design files on the minDUINO page.

This should be the last in the line of the minDUINO designs. It’s been fun getting all the details correct, making a couple of mistakes and seeing the final products working. I believe, between version 1.5, 1.6 and now v1.7, there’s a minDUINO to fit a multitude of uses. I’d now like to focus on the HAB tracker I have been designing, the VAYU-NTX. Design files are on my other website ProjectHAB.

Posted in Building, Design | Tagged , , , , , , | Comments Off on Last of the line?

minDUINOs v1.5 & v1.6 are go

Having received the minDUINO v1.6 boards today, I’ve built one up and it’s all fine. I do like to prove a board before I publish it. I’ll be placing the design files online shortly.

minDUINO v1.6 Powered

minDUINO v1.6 Built and tested

As with v1.5, the FTDI module works fine. Subject to there being an Arduino™ bootloader or similar pre-programmed into the ATMEGA328. You can purchase these chips pre-bootloaded on eBay. Of course, you can always go the ICSP route which doesn’t require the bootloader.

minDUINO Board Comparison

minDUINO Boards Comparison

Posted in Building | Tagged , , , , , , | Comments Off on minDUINOs v1.5 & v1.6 are go

v1.5 Arrival

I thought I’d post a quick update. The minDUINO v1.5 boards have arrived. They look great in red. Another excellent job by Hackvana.com

minDUINO v1.5 Front & Back

minDUINO v1.5 Front & Back

The minDUINO v1.6 boards that can accommodate a ZIF Socket are also on the way. Stay tuned for updates on building them.

[UPDATE]
I’ve now constructed a minDUINO v1.5 board and all is well. This time I’ve taken advantage of the resonator option. I left off the GPIO and ICSP headers and just tested the FTDI which programs fine with the FT232 module.

minDUINO v1.5 Built and tested

minDUINO v1.5 Built and tested

Posted in Building | Tagged , , , , , , , | Comments Off on v1.5 Arrival

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