A tiny vibrating bot

Tiny vibrating robotThis weekend I had nothing to do so after watching that video on YouTube about the Kilobot project I decided to build something similar but much simpler myself.

It took me just couple of hours to make the mechanical part of it. For the “brain” I used one of my header broads based on Atmel AVR ATtiny25 chip.

It still needs improvements, especially the vibrating motors – right now it could turn left and right but has difficulties to go forward. I should probably change their angle or adjust the legs.

I shot a short video about building it with few seconds in the end with the robot crawling around.

Nice, isn’t it.

🙂

 

Advertisements

My ATtiny Tiny Header Board

This is a personal project to build a header board for the Atmel AVR chips of the ATtiny series and more specifically 25, 45 nd 85. It should be also compatible with the ATtiny13 chips.

Goals

I really like the ATtiny series, especially the 8-pin chips – they are small but provide enough resource to build simple stuff. They are cheap too.

Here are some of the goals for this project:

  • Easy to understand schematics – with the minimum required ATtiny external components, that’s really simple.
  • Simple to assemble board – just few components – no SMD.
  • Easy to find and cheap components – it is only the IC and few other components.
    I was able to buy everything from the local hobbyists store and from Internet at very attractive prices.

Schematics and Board

ATtiny Tiny Header Board Schematics
Schematics

I designed the circuit at http://123d.circuits.io. This site is great. It allows me to to draw the circuit and then, after I’m finished, I can design the PCB as well. It have some glitches and need some improvements but worked just fine for my simple project.

That was one of my first projects on this website and as it turns out later when I received the PCB’s I made some designing mistakes – like size of the pads.

Design Considerations

I chose 10-pin ISP connector because this is what I have at home but also because most of the ISP programmers on the market today, especially those available on eBay, are equipped with such connector.  I chose the one that is larger – with a shell.

I put 2 8-pin headers type 2×4 on each side of the IC. I did this for two reasons:

  • For simple stuff I can use it as a breadboard – there are the IC signals on one row and GND on the other.
  • For more complicated stuff I can always add a shield-like board on top of it.
    (later I figured one of the headers should be longer than the other so the shield won’t be put in the wrong direction)
ATtiny Tiny Header Board PCB
PCB

There is a RESET button.
(later I realized that this may not be needed in most case and it takes too much space on the board)

There are to jumpers on the board. I put them because in some of my projects I need to connect external power source and at the same time measure the current that the board draws from it.

There is no Xtal on the board nor space for it. I think this is not needed in most cases. Anyways, for more complicated projects it could be added to the shield board.

There are no built-in LED’s on the board, as I would put on most of my experimental boards, since they may not be needed in general. No need to waste space.

Ordering the PCB’s

ATtiny Tiny Header Board PCB
PCB’a Ready

I ordered the boards at http://oshpark.com. For 3 PCB’s I paid $5.40 – that includes international shipping (to Bulgaria) – that’s $1.80 per board. Good price. The whole process took 21 days – from putting the order until I got it in my mailbox.

The process is very simple: I downloaded the zip file from the http://123d.circuits.io website (my project is at http://123d.circuits.io/circuits/38901) and uploaded it to http://oshpark.com directly without any modifications. It worked right away. The board is currently located at http://oshpark.com/shared_projects/5pgVFXu4.

The boards arrived yesterday – they look great.  They also have nice ENIG (gold-platin) on the pads.

Even before I started assembling the board I noticed some problems in the design.

  • Apparently  the footprint that I chose for some of  the components made them with tiny pads – will have issues soldering them. But those were already made components at http://123d.circuits.io and I couldn’t change them.
  • Another thing, not that important though, was that some of the white print (the text labels) were too small – this could be fixed very easy in the next version.
  • The holes for the tactile RESET switch were too small – it won’t fit for sure.

Assembling

ATtiny Tiny Header Board Completed
The board completed

The holes for the tactile RESET switch were too small, so I soldered it on the surface. Similar problem with the ISP connector but somehow I managed to solder it.

Since this board will be used for prototyping it will be good to know what all those PIN’s are for, so I put stickers on the 2-row header connectors with names for the IC pins.

For more flexibility one of the power connectors is a jumper (2-pin male header) while the other is 2-pin female connector.

Planned Updates

There are few things that I consider changing in the next version of the board.

  • Remove the RESET button. It is not needed in most cases but if necessary it could be connected externally directly to the PIN1 of the IC or if it is part of the functionality of the project could be added to the shield board. Although, the pull-up resistor hooked to the PIN1 of the IC should remain.
  • Remove the power jumpers. They take too much space on that tiny board and will not be used that often. External power could be connected through the 2-row headers.
  • 2-row headers should be different in length so if there is a shield board it will not be put the wrong way. One 2×4 header (for IC PIN1-PIN4) and another one 2×5 (for IC PIN5-PIN8) sounds like a good choice – The extra length will not take that much space on the board but will make it a lot more universal.
  • Make pads larger. For some of the components, like the ISP connector they cannot be soldered.
  • Make the text labels (white print) larger so they could be easily read.
  • Use the simpler version of the on-board male ISP connector (no shell) so it will take less space on the PCB. Add also the necessary white print to tell how to put the female connector.
  • Add more text labels (white print) with components names, parameters, etc.

Current Status

This board works just fine, there are no errors in the schematics or on the PCB.

It needs some improvements in the design, but most of them are not critical.