Posts Tagged ‘timelapse’
Brrd Brain Board: More progress & less zigzags
Check out this week’s progress! The routing is done, updated the headers to R3 format, and there’s less zigzags!
It’s been a fun week to see this progress come along. Here’s a timelapse of all the action:
Watch on YouTube
This was the board at the point just before starting to fix everything up. I moved the analog lines to the screw terminals to between the proto area because since there is going to be PWM on the proto area, this would interfere with it. Thanks a bunch to dago for pointing this out!

Decided to change the headers to R3 format. It was supposed to be a small task, instead it ended up being this confusing mess that changed into a 40 minute issue. For some reason the pin numbers of the footprint and symbol just weren’t cooperating. Very frustrating:

This spot here will be filled in eventually. Can you guess what it would be for? You probably can, this is such a lame guessing game.

Here is the before shot of the de-zigging:

Here is the after shot of the de-zigging:

Now since I am a noob at all of this making hardware stuff, I have some questions. It would be really nice if people familiar in this area could lend some answers! I really appreciate everyone’s help and everything

(here are larger versions of this image)
1. Should there be a ground plane here? The ground route is actually quite short. If there was a fill, there would be many sides and edges, and wouldn’t be very big. Is there any advantage or disadvantage to this?
2. This is the 7805 for the servos, it’s going to be throwing off a lot of heat. Will this heat mess up any of the pads or the routes? What about the screw terminals and headers adjacent to it?
3. I use this V pattern to via together two of the wires. Is it better to use a V or a T? Why?
4. For joining the routes to these pads, it isn’t a straight line but rather one that angles in on both sides. Will this be okay, or is there not enough surface area on the route touching the pad?
5. Going horizontal are ALL of the power routes: Gnd, 5V (arduino) and 5V (servos). Going vertical are all of the digital inputs/outputs. These routes are on different sides. Will there be any effect on the digital inputs from the power? Why?
6. Will this work since there are going to be holes drilled in each of the pads? (Actually think I figured out this one, since the pads are conductive about their circumference, then it should work)
7. Do zigzags like these have a large effect on the signal from the pin? Is there any way to lessen the effect?
8. Is there any problem with having vertical and horizontal routes on different sides with different signals? Will there be noise? Also, is the spacing between the horizontal routes okay? It is 40 mil between the middle of the routes, and the routes are 15 mil.
9. Is this length of the ‘jump’ between this power route and this signal route okay? It is 70mil long, route is 15 mil. The power route is 20 mil. Just wondering if the length of this jump has any effect on the signal or anything.
10. Does having this power route come right through all the pin routes have any effect on the signal? It is on a different layer…
11. Do the routes close to the oscillator have any effect on the oscillator? Would this be bad?
12. Will these routes between the pins be okay, or will there be interference? The pads are 100 mil apart. The route is in the middle at 50 mil, and has a width of 15 mil. So the actual distance between the route and the pads is less than 10 mil. The distance between the digital and analog route is also less than 10 mil.
13. Do the 7805s for powering the Arduino generally get hot? Would it be better to have this laying down or standing up with a heatsink? Also if it is heating up, is it too close to the capacitors?
14. Are these jumps okay? The length is 80mil and they are going across a 25mil route.
15. Are these capacitors too close together? How close or far away should capacitors be?
16. Similar question to one previously, is it better to have a V or a T?
17. Are these vias big enough for the routes? I use the same size of via throughout the board on routes that are 15 mil, 20 mil, and 25 mil. The size of the via is:
Line width: 6 mil
Hole size: 11.81 mil
Ring size: 24.02 mil
18. What is the best way to go from one route size to another? For example here I’m going from 25 mil to 20 mil, but it leaves a weird sort of outline. Would this effect anything?
—
Thanks to anyone who answers any of these questions. You don’t have to answer any or all of them, but I do appreciate whatever answers there are because I’m still trying to wrap my head around this all
I’ll also try to do my own researching for the answers too!
After editing some things based on the answers above, there are a few more things to do:
- mounting holes
- silkscreen labels
- silkscreen imagery (svg into gEDA), really looking forward to this ![]()
- change the arduino 5V pads in the proto area to squares to make it easier to understand
- use gerbv and stuff (have to research this more)
- get a few printed up at dorkbot pdx ![]()
- order parts for a few at local electronics store (ABRA)
I am kind of wondering how this attribution for the hardware will work. I used EMSL’s Diavolino a lot for reference, and the proto area on the side was obviously inspired by the Adafruit perma protos. Do I include a reference to these two things on the board, or can I do it on the schematic, pcb, and website files?
At least now that I have the dimensions of how big the board is, I can begin sketching out ideas for the shell. We are moving along, WOOHOO!
Also does anyone have any recommendation for testing equipment stuff? All I have right now is a multimeter, will that be adequate to debug this board when the time comes, or should I order something more complex, like perhaps a DSO nano or something? How do you test your boards?
For week 7 the goal is to get this board ordered, and to have some preliminary dimensional drawings done.
RoboBrrd + gEDA Brain Progress
Happy holidays everyone! Last week I worked on the schematic and board for RoboBrrd’s brain. There was also great research done about how to go about the interactive games for RoboBrrd.
Here is are some timelapse clips of this week in gEDA for RoboBrrd:
Watch on YouTube
I based the schematic off of the Diavolino and GNUduino arduino clones, because they are in gEDA too. Learning gEDA gets better with the more practice you have!

The atmega328 symbol is from Matt Padina‘s TLC5940 knowledge base. It is so nice how it is organized and how the pins are labeled with everything!
The funny part about this schematic now is that I can see many small things that I dislike. For example, the amount of small capacitors. Are they really necessary on some of the power pins? I’m going to poke around at some of the other arduino clones to see how theirs is designed too. It’s kind of interesting, because there’s a boarduino on my desk beside me as I am typing it, and I just noticed it has an orange gumdrop-like component instead of a silver clock. I’ll research more into how that works!
One of the nice things about gEDA is that you can have multiple sheets! I use the input symbol with a custom netname to be able to ‘connect’ the pins from the first sheet to the second sheet. Here are the servo headers, on their own lonely sheet.

For creating the pcb, in gschm2pcb I was stuck for DAYS on this issue with the footprints. I just couldn’t work it out. For some reason on both the Diavolino and the GNUduino, the headers use a standard footprint that I couldn’t find in my library.

Finally, tonight I figured out a way to get the footprints! The ones on the Diavolino are nice, so to grab the footprint from the board and put it into a file, you can just do:
Buffer > Save buffer elements to file
Save as a .fp > Done!
Since I was editing the schematic and the pcb had to be updated often, I found that the best way to go about this was to always remove the old .new.pcb file. If you don’t, I’ve had it happen where all of the parts get scrambled up.
This is what the board looks like right now.

I’m not sure about the height of the board (the distance between the rows of headers). I need to figure out how to measure things in gEDA, that would be really handy.
The green rectangles are the screw terminals. They will only be on one side, because the board is going to be in the base on the right. In Impy RoboBrrd right now, it is really difficult to access the left side of the screw terminals because they are below the top face of the base. Plus, some of the wires stick out the side, which isn’t very good. Not to mention that the wires had to be longer, because it is longer to get to the other side of the board. And, they get tangled. Blech! As long as the board will be less than 12cm or so, it should be fine.
There is a large prototyping area on the board. It will be like a breadboard, hopefully this will help students! Also there is a mistake right now, the holes are vias when they should be pads. Have to fix that.
The blue rectangle will be an area to access all of the pins again. It will be handy. The brown rectangles will be some more pads that can be soldered to. The aqua rectangle is where the voltage regulator will eventually be able to plug in!
One of the things that I hope I’ll be able to do is silkscreen both sides of the board, because it will make it easier to see what pins are what when flipped over. I think the Arduino MEGA Protoshield does this, and it is extremely handy.
I’m not sure if I enjoy the placement of the voltage regulator near the back. This means that it would be at the front of the RoboBrrd, making the battery difficult to plug in. I have to think about this more, maybe it will be moved up to the front of the board, before the prototyping area.
Some cool things that I discovered this week that will be fun to play with in gEDA are:
SVG to PCB
PCB+GL
That wraps up week 2. The goal for this week mirrors that of last week, but to complete the progress that was started. FINISH THE BRAIN!
—
If anyone out there is trying to use gEDA to make Arduino related things, here are some of the resources that I found to be particularly helpful! And of course what better time to learn gEDA than now… there is even a gEDA badge!
Arduinos
http://www.evilmadscientist.com/article.php/diavolino
http://jeffrey.co.in/projects/gnuduino/
https://github.com/jeffreyantony/GNUduino
Shields
http://lowvoltagelabs.com/2010/11/16/arduino-shield-board-outline-in-geda-format/
http://lowvoltagelabs.com/products/videooverlayshield/
http://wiki.evilmadscience.com/ISP_Shield
More
http://sites.google.com/site/artcfox/demystifying-the-tlc5940
http://wiki.evilmadscience.com/Bulbdial
http://wiki.evilmadscience.com/Larson_Scanner
http://wiki.evilmadscience.com/Meggy_Jr_RGB
http://wiki.evilmadscience.com/Octolively
Random
http://wiblocks.luciani.org/remix/index.html
http://www.gedasymbols.org/user/russell_dill/cec.html
Refurbishing Robot

The missing parts to the TECHNOROBOT kit that I got at the explOratorium during the Stanford EPGY AI Program in 2008 have been found! This robot has been transformed many times, the first as an idea/prototype for an emotional line following robot, then a snowplow, and now it will be an XBee messenger robot!
Refurbishing it was OK, it only took 4 hours. The only thing that was drastically broken was the drive axel. To fix it, I used some Lego axels.
The robot now uses an Arduino, and is powered off of USB. The motor is driven with the Adafruit Motor Shield (I plan to add more motors to the robot someday). The motor is powered from an Adafruit mintyboost.
I broadcasted the refurbishment to the Fat Man and Circuit Girl stream, AND took a photo every 5 seconds! You can see the HD timelapse on Vimeo!
The next steps for this robot is rather short:
- Make a battery pack for the Arduino
- Attach XBee
- Mount an ultrasonic sensor, program a simple behaviour
- Transmit messages, listen to messages
Can’t wait to blog more about it!
