ESP’ecially good!

The ESP8266 ESP-01/03 Flash/Proto v1.4 boards arrived today. I set about building one up to test it and it all checks out.

ESP-01-03 Flash-Prototype Board v1.4

ESP-01-03 Flash-Prototype Board v1.4

I used my usual SMD soldering technique of placing blobs of solder paste on each of the connections with a pointed tool and using an SMD rework station to melt the solder.

SMD Soldering by hand

SMD Soldering by hand

It’s not pretty but the PCB is readily cleaned with Acetone after all soldering is done (Read safety guidelines before using Acetone). My SMD soldering process is more fully explained in my earlier post: SMD Soldering Technique on my other website

The ESP8266 Flash/Proto boards were fabricated by the excellent Hackvana to their usual standard. Even the smallest silkscreen text is readable, even if I do need a magnifying glass to read it!

Having now tested the first board, I’m have published the design files on their own page: ESP8266 ESP-01/03 Flash Prototyping Board

Posted in Building, Construction, ESP8266 | Tagged , , , , , , | Comments Off on ESP’ecially good!

ESP8266 ESP01/03 Flash-Prototype Board

The ESP01/03 Flash-Prototype Boards arrived from the fabricator. Good quality boards in a reasonable time. Although not Hackvana (Sorry Mitch, I’ll be back for the next batch!).

ESP-01-03 Flash-Prototype Board v1.3

ESP-01-03 Flash-Prototype Board v1.3

Here you see two of the boards, one populated with an ESP-01 module, the other with an ESP-03 SMD module. Both work well but I have since found out that the ESP-03 module requires GPIO15 to be to be LOW during normal running or programing. Also, GPIO2 needs to be taken HIGH along with GPIO0 being taken LOW for programming. Hence the flying leads on the ESP-03 illustrated.

I am in the process of updating the board design to accommodate these changes and I’ve also taken the decision to make it fully SMD. This will make the board more compact and easier to use for IoT applications.

ESP-01-03 Flash-Prototype Board v1.4 SMD Gerblook

ESP-01-03 Flash-Prototype Board v1.4 SMD Gerblook

Posted in Design, ESP8266 | Tagged , , , , , , | Comments Off on ESP8266 ESP01/03 Flash-Prototype Board

Distractions (ESP8266 Flash Board)

Lately, I’ve been distracted from general AVR stuff by the now ubiquitous ESP8266. I purchased a few ESP-01 boards and an ESP-03 board a while before moving location and I’ve just got around to learning a little about them.

The first thing I did was rig up a small strip board PCB to aid in the programming. At first, I was powering the ESP module from the USB to Serial adaptor but I found that it wasn’t man enough. I modified the board to accept external power from my bench PSU and disconnected the +3.3V line from the adaptor.

ESP-01 Prototype Programming Rig

ESP-01 Prototype Programming Rig

This was just intended as a quick solution until I designed a proper PCB. Meanwhile, I discovered that you can use the Arduino IDE to program the ESP modules. I’m very familiar with the Arduino IDE so I installed the files required after downloading the latest Arduino software.

Having gotten interested in the ESP modules, I did some searching and one of the websites I came across was Here was documented a way of logging Temperature and Humidity from a DHT11 unit connected directly to the ESP-01 module. You can see a DHT11 in the previous image in the top left of the PCB. I duly followed the instructions on the Cloud Temp/Humid Logger page and lo and behold, I had Temperature and Humidity values displayed on Freeboard (May not be up to date or accurate).

Although I had made the prototype configurable for programming and reading from the DHT11, I really wanted a dedicated board I could use, and one that would allow me to utilise the ESP-03 module that has lots of GPIO pins broken out. I set to work designing a board in Eagle.

ESP8266 Flash Board v.1.3 Eagle Preview

ESP8266 Flash Board v.1.3 Eagle Preview

This is the result. A general purpose board able to accommodate either the ESP-01 or ESP-03 modules. The power source is selectable from either the USB to Serial input header or a Micro USB connector/standard 0.1 pitch header. In the latter case, the voltage is regulated to 3.3V by the LM1117T device. The board also features a 3.3V zener diode on the RX pin of the modules to prevent over voltages over serial, a reset switch, power indicator LED and GPIO header.

Once the boards have arrived from the fabricator and I have checked them over, the design files will be available on a dedicated page licenced under Creative Commons Attribution – Share Alike v4.0 for anyone to use as they see fit.

Posted in Uncategorized | Comments Off on Distractions (ESP8266 Flash Board)

New minDUINO Variant.

Way back last year, before all the hassle that moving location entails, I started to design a minDUINO variant to work with the UKHASNet mesh network. Finally, having gotten settled down, to a degree, in my new location on the south coast of England, I have been able to continue.

I have designated the new board as minDUINO v1.6b. The major difference to the previous boards is that it runs on 3.3v rather than 5.0v. It utilises an LM-1117T regulator. Apart from that, it’s pretty much the same as versions 1.5, 1.6 & 1.7 apart from the additional resistor network, an ESP8266 WiFi module and an RFM69HW module for radio duties.

MinDuino v1.6b UKHASNet Node

MinDuino v1.6b UKHASNet Node

The RFM69HW is integrated on to the main board and the ESP8266 plugs into the header at the top of the board next to it’s associated component C10. Being based on the minDUINO, it retains all the programming and GPIO headers. I have added a header to access the RFM69HW’s GPIO ports as well. JP9 gives access to monitor the supply voltage pre regulator by connecting Vin to ADC0 on the ‘328 micro-controller and JP5 connects an optional indicator LED to D10 which the previous versions were hard-wired for. On the latest iteration of the board (not shown), there are also two through-hole test points to monitor the regulated voltage.

I have found it useful in the past to let a design sit for a while so that my brain can view it afresh and spot any glaring mistakes. My intention is to do so before having some PCBs fabricated by Hackvana. Eventually, the design will be published on the main minDUINO page under the Creative Commons Attribution Share Alike licence v4.0 for anyone to utilise as they see fit.


Posted in Uncategorized | Comments Off on New minDUINO Variant.

To Tweet Too Who

ProjectAVR now has a Twitter account. The truth is that it was getting a little confusing tweeting from the Project_HAB account about Project_AVR stuff. It needed to have it’s own account for organisation sake. Hopefully now, tweets from both accounts will make more sense.

ProjectAVR Twitter Icon

ProjectAVR Twitter Icon

Posted in Design, Social Networking | Tagged , , , , , , | Comments Off on To Tweet Too Who

Summer Developments

It’s been busy at ProjectAVR. I’ve been squirreling away, making up minDUINO kits for the Scouts JOTA event. They are almost finished now. Just a few last minute additions on back-order. The assembly instructions are complete with included circuit diagram and components key.

minDUINO Kits

minDUINO Kits

I managed to find the perfect sized boxes on eBay and print up some natty labels. I wanted to give the impression they were commercial kits.

A special mention has to go to RS Components who have shown outstanding generosity in not only sponsoring the components for the minDUINO kits, but also in supplying five soldering kits for the Scouts to use. These will be invaluable for building the kits but also for their ongoing education in electronics.

Meanwhile, ProjectHAB (still me!) has been working on a High Altitude Balloon payload to demonstrate to the Scouts for their JOTA event on October 19th. Hopefully the conditions will be right for a launch and tracking. I’m going to attempt to get the balloon to ‘Float’. This is when the ascent is slow enough not to rupture the balloon and maintain a steady altitude once it reaches a point of buoyancy. I’ll make an announcement for the launch closer to the time on this blog and on the UKHAS Google Group.

Several amazing achievements have been made in HAB (High Altitude Ballooning) recently. One HAB enthusiast, Leo Bodnar, has circumnavigated the globe with two different balloons, what’s more, they both orbited twice! Leo uses a clever combination of solar powered tracker modules and his own home-made envelopes (balloons) to do this.

B64 - Flightpath

B64 – Flightpath on

B-64 Solar Payload

B-64 Solar Payload (Image Leo Bodnar)

Although I don’t expect to circumnavigate the globe with my Scout demonstration, I would like to get into a float and perhaps, be tracked into near Europe.

Another project I have become interested in is UKHASNet. This is an amateur sensor network. It is hoped to use the technology for tracking balloons too so it makes a nice crossover point. I have built two ‘nodes’ so far. One is a gateway and is connected to my main PC. It also samples temperature and sends that information into the system, as well as listening and repeating any other nodes it ‘hears’.



CFORD1, my first node, is based upon an 8-pin LPC810 programmable microcontroller and was designed by James Coxon. The firmware samples the temperature from the RFM69HW transmitter module and together with some other telemetry, it sends that via a serial link to the CR2012 module which converts the serial information to USB. This in turn is received by a Python script running in PythonWIN and then sent to the UKHASNet server.

My second node, CFORD2 designed by Phil Crump, is an ATMEGA328 based design which I’m more at home with (although the LPC180 was a breeze to program). I have made CFORD2 autonomous by providing a Lithium Polymer rechargeable battery fed with solar power from a panel affixed to a window as suggested by Phil.



This node, in common with CFORD1, samples temperature but also the voltage of the battery input to the node. Currently, both nodes are not calibrated so the readings may be very inaccurate but the interesting thing to observe is the trends and how they repeat day after day.

Just like the HAB Tracker CHEAPO, I decided to develop Phil’s circuit a little and add a breakout for the ATMEGA328 pins, a dedicated Temperature/Humidity sensor and include a GPS to avoid having to hard-code the Lat/Lon co-ordinates. I also chose to make the PCB in SMD to keep the boards small. I will be getting these PCBs fabricated in the near future.

UKHASNet GPS Node v1.1

UKHASNet GPS Node v1.1 Gerblook Preview

Phil’s firmware should run on this board with no change since it is much the same circuit that he designed. It just has a few extras which I will add code for at a later date. I have also designed a daughter board for minDUINO v1.6 boards to expand them into sensor nodes with a simple add-on.

minDUINO v1.6 UKHASNet Daughter Board

minDUINO v1.6 UKHASNet Daughter Board

Again, these are based on Phil’s circuit but the daughter board has no GPS on board. I will decide whether to get these fabricated after testing the full GPS Sensor node PCBs. At this point, I will also publish all the design files for the GPS Sensor Node.





Posted in Building, Design, UKHASNet | Tagged , , , , , , , , | Comments Off on Summer Developments

JOTA – 2014

This year, I’ve been invited to the Scouts JOTA/JOTI event on October 18 & 19th. JOTA (Jamboree on the Air) & JOTI (Jamboree on the Internet) organises Scouts all over the world to communicate via radio and the internet.

JOTA 2014 Flyer

JOTA/JOTI 2014 Flyer

Primarily, I was invited to launch a High Altitude Balloon for the Scouts to track and receive telemetry but I suggested that it might also be a good idea to get the Scouts to assemble a minDUINO to take home with them to aid their education in electronic engineering. It will also give them an introduction into microcontrollers and how they are programmed. I decided the minDUINO v1.6 was the best board to make a kit out of since it can be used as a general board, a programming board or for prototyping, with an inexpensive additional breadboard.

minDUINO v1.6 Powered

minDUINO v1.6

Making fifty kits of parts is a fairly costly proposition so I looked for a likely sponsor. The company I chose was RS Components. This is a very well established organisation, renowned for it’s quality products and first class customer service. I was extremely pleased to get a swift reply to my initial inquiry:

“We are always interested in supporting the Engineers of the future, especially in promoting an interest on Electronics. The Jamboree sounds very interesting and is something that we could possibly help with.”

I have since supplied RS Components with a full list of parts for the minDUINO v1.6 and they have them on order. I have also ordered the PCBs which are being fabricated by Hackvana as I type this article.

I am very much looking forward to making the kits up and especially looking forward to assisting the Scouts in building their minDUINOs. This is the sort of opportunity I would have relished as a young lad myself and I’m very happy to be contributing to the countries up and coming engineer base.

RS Components Banner

RS Components – New Products

Posted in Building, Events | Tagged , , , , , , , , , | Comments Off on JOTA – 2014

ICSP to Breadboard Adaptor

Frustrated by having to poke jumper wires into the socket of my AVR ISP MkII every time I wanted to program a breadboarded AVR, I quickly built an adaptor from strip board. It consists of a 6-pin shrouded header plug and two lines of three header pins.

ICSP Breadboard Adaptor Mounted on Breadboard

ICSP Breadboard Adaptor Mounted on Breadboard

Construction is fairly straightforward as you would imagine. First cut a piece of strip board 12 lines by 8 columns, or thereabouts. Make a cut straight down the center.

ICSP Breadboard Adaptor Underside

ICSP Breadboard Adaptor Underside

OK, mine isn’t quite central but you get the idea. Check the cut under a magnifying glass, I have found that this is useful to see any swarf that is creating a short-circuit. You can test the breaks with a multi-meter set to Ohms or Continuity if you like.

Prepare the header pins by pressing down on the plastic to the short end to reveal as much of the pins as possible. I do this with needle nosed pliers. Then feed them through the strip board two holes away from the cut to suit breadboard’s center channel. Solder them in. I tend to solder one pin and then straighten by touching the reverse side and reheating the first connection. Careful not to burn yourself on the heated pin and do this very quickly to avoid the header strip melting.

ICSP Breadboard Adaptor Side View

ICSP Breadboard Adaptor Side View Showing Extended Header Pins

Solder in the shrouded header plug a few holes away from the header pins and straddling the cut. Once it is in place you can solder wires across from the shrouded plug to the header pins. I have developed my own colour code to aid me when connecting up but feel free to use your own. I found a piece of scrap ribbon cable to source my connections from. The colours I use are:

  • Red – VCC
  • Yellow – MOSI
  • Black – GND
  • Orange – MISO
  • White – SCK
  • Brown – RESET

Once you have soldered these connections, double check your soldering with a magnifying glass or multi-meter, just to be sure. Bridging connections is very easy on strip board, something I’ve found out to my cost!

ICSP Breadboard Adaptor In Use

ICSP Breadboard Adaptor In Use

To use the device, find a spare area on your breadboard and place the adaptor so the header pins straddle a channel, just like a DIP Chip would. Press in firmly and then you can connect the programming lines to your project with jumper cables without damaging the programmers connector.

Posted in Building, Equipment | Tagged , , , , , , | Comments Off on ICSP to Breadboard Adaptor

minDUINO v1.7 Arrival

I’m very pleased to report that the minDUINO v1.7 boards have arrived and are excellent! Fabricated by the fantastic Hackvana. They have never failed to deliver a top quality product.

minDUINO v1.7 Prototyping Edition

minDUINO v1.7 Prototyping Edition

I’m very much looking forward to building one up to prove all is OK and then I will post the design files on the minDUINO page. The main feature of this board is the prototyping area which I added to facilitate experimentation. I have emulated the style of many prototyping boards in that I have included two central rails for power or signal and sets of three points for adding components across chip pins.

minDUINO v1.7 Prototyping Area

minDUINO v1.7 Prototyping Area

I’m hoping that between versions 1.5, 1.6 and 1.7 there will be a minDUINO to fit many criteria for experimenting and learning about AVRs.

I have now assembled a test board and it checks out. I have posted all the necessary design files on the minDUINO Page.

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

minDUINO ‘Hello World’

This post assumes that your ATMEGA328 chip has a bootloader installed. Chips with the bootloader already installed can be obtained from many sources, including eBay. Details on how to install a bootloader manually will be detailed in a future post.

So, you’ve built your minDUINO and you need to test it. What do you do. The easiest way to test it is to get a real program running. Traditionally it’s a blinkenlight (Flashing LED). This is why a regular Arduino™ board has an LED on digital pin 13. However, I deliberately designed the minDUINO to have an LED on digital pin 10 which is a PWM pin and therefore I could demonstrate PWM to Amelia (who the board was originally designed for).

To run the test, connect your FTDI module to the minDUINO’s FTDI header, If you have the right module you can plug it directly in, otherwise, you can use easily obtainable flying leads.

FTDI Connection

FTDI Connection

You will see that the board is powered through the FTDI adaptor. Don’t attempt to power it externally at the same time.

Load the Arduino IDE and go to File-Examples-01.Basics-Fade Clicking on this loads another instance of the IDE. You may close the first one if  you like. In the code, you will notice the pin designated is pin 9.

int led = 9;           // the pin that the LED is attached to

Edit this to read ‘int led = 10;’ since our LED is on Digital Pin 10. Leave all the other code alone for now and click the tick icon to check it compiles. If not, check you haven’t changed anything else in the code and if necessary, start again.

Once the code compiles correctly, click the upload icon and the compiled code should upload through the FTDI module to the minDUINO and hopefully you will be greeted by an LED fading up and down in brightness. If this doesn’t happen, double check you have connected the FTDI module correctly, paying particular attention to the TX and RX lines. The header pins should match the FTDI module and not be swapped.

If this proves not to be the problem, double check that you have soldered the LED/s in the right way round. It is very easy to get this incorrect.

Hopefully, this will give you a quick and easy way of proving if your minDUINO is alive and well and lead to further experimentation.

Posted in Equipment, Testing | Tagged , , , , , , | Comments Off on minDUINO ‘Hello World’