Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Curiosity Hacked Circuit Design Badge
(insert badge here)
1. What kinds of ideas and projects catch my attention and make me excited to explore and learn? What concepts and skills would be valuable to me?
2. What steps do I need to take in order to take charge of my own learning?
3. How can I use the resources available to meet my goals?
4. How can I share what I learn with others?
5. How will mastery of a concept or a skill assist my goals?
Badge Design Process#
redesign (and repeat 4-7 as necessary)#
(insert picture of badge)
(what is the intention of this badge? Why are we doing this? Why is it important?)
After earning this badge, young hackers will be able to:
break down a electronics project into specific components**
design a schematic and circuit layout to meet their needs using Eagle**
order a circuit board**
test functionality of an ordered board
(what info needs to be acquired, retained, and applied for skill/concept mastery?)
Produce a circuit board that works as desired
Create at least one library part
Create the spreadsheet with all the parts needed
Layout and schematic must be neat and logical
with a minimum of vias
without any unterminated wires
all components must be used
board space must be kept at a minimum
Explain why each component was used
Calculate the cost to produce 10, 100, and 1000 of these circuits
(websites, etc we have found helpful for supporting mentors in guiding this badge)
Lessons and Activities to support Badge Objectives:
Note: These are activities and resources meant to help facilitate the acquisition and retention of the skill or concept being mastered. They are not, however, mandatory. A dialogue between the Mentor and young hacker should result in a plan to meet the requirements of this badge with the child’s vision as the guide. That may include some or all of the activities below, or it may be designing a new project. The mentor will help to shape the plan so that the child can master the skills through what he or she deems valuable, while still ensuring a comprehensive education in this skill/concept.
Use of Eagle, how circuit design works*
Types of circuit boards*
Types of IC packages*
Cover Circuit design cycle:
1) Describe the goal/purpose
Describe in the finest detail possible what your device does. What does it do? How do people use it? How does it react? What do you see? What do you hear? What happens internally to make that work? What is your budget? Target price?
For target price, if you have no idea, you can start by thinking how much you would pay for it in the store. Divide by 3 or 4 to get the price that it costs to make it. That is at quantities usually > 10,000.
Prices go up a lot when you make smaller quantities. You can approximate this by doubling the price for every 2 orders of magnitude you reduce the quantity: if it cost $10 at quantity 10000, it might cost $20 at quantity 100. This is a super rough estimate - this varies wildly by the type of component.
ex) I'm designing a game system. People play games by pressing buttons and moving a joystick. the signals get sent to a microprocessor, which maintains the state of the game, and displays the state, including elements that I have modified with the buttons and joystick actions on a dot matrix display. I load and start games by interfacing directly with the microprocessor through a computer. I want the Bill of Materials (BOM) to be $15 at quantity 100.
2) Identify the components needed and their requirements
Identify all the parts needed to make this work. Using a block diagram, sketch out how components will go together. remember that switches must be read, or directly control an output, so control circuitry may be needed. Also, if there is a required characteristic for a component (current requirements, time requirements, etc) you should note them.
ex) I will need 4 buttons and a joystick. The buttons have to be at least 1cm square, so I can hit them easily, and the joystick must have 2 axis and have low (.3G resistance). I will need a dot matrix display and something to drive that. I will need a microprocessor that can drive a dot matrix fast enough to not be noticeable by the human eye (30Hz x 20 columns x 5 rows = 3 Khz). I can use an arduino.
3) Identify the circuit components*
Identify specific components that will meet your requirements. You can find these through various sites:*
Jameco.com - Limited selection, but good deals*
Digikey.com - Massive selection, pretty good parameteric search*
Mouser.com - Massive selection, searching is pretty bad*
AllElectronics.com - very limited selection, but good deals*
http://www.goldmine-elec-products.com/ - very limited selection, but good deals*
Octopart - useful for getting the best deal on a component. Searches all distributors.*
It may be helpful to start off on Jameco or AllElectronics, since their limited selection helps narrow the possibilities. Digikey and Mouser have the datasheets, though, which is needed for future steps*
Create a spreadsheet to keep track of these components. The spreadsheet should list:*
Part name (you make this up. recommended: resistors are R1, R1, caps are C1, C2, etc.)*
Manufacturer part number*
link to purchase, or distributor’s part number*
(optional) alternate part numbers that could be used*
Look in the datasheet for each part to see if it needs additional components
ex) The buttons I can use are part XXX - they are the right size and they are fairly cheap.
4) layout the circuit schematic (eagle)
Actually lay out how the components will connect electrically*
To determine how a component will connect, look in it’s datasheet*
you may not have the exact part in the eagle libraries (you can also include sparkfun and adafruit libs) If so, you will need to create a new library part! See instruction in the eagle manual.
5) layout the board design (eagle)
Lay out where the components will be on the physical board.
once all the part are connected electrically, you can arrange their physical positions via the layout tool. (see eagle manual)
When you are nearing completion:*
check to make sure you do not have any airwires*
Perform a design rule check (DRC) using the specs from your manufacturer**
we use http://oshpark.com/*
You may add additional text to your board in what is known as the silkscreen layer. YOu have a top and botton layer that you can write on. Remember that writing on the bottom should look backwards!*
Once you pass DRC, you can generate gerber files using the cam processor (additional instructions about using sfe-gerber, or an osh park cam)*
Print out the gerber files for the board at 100% scale, so you can check that your parts line up correctly
6) Order your board
Zip up your gerbers and place an order with osh park (Mentor can help)
When you receive your board, solder the components on, and check functionality!
Additional Resources: (any other resources that may be related to the badge skill, but not essential to the objectives)
How can I share my knowledge with others? Did I document my project through notes and/or photos? Did I find an activity or resource that was particularly interesting or helpful?
Mentors will help our Curiosity Hackers finish their badge by sharing the above on our wiki in the appropriate badge section
badge framework developed by Garratt Gallagher, Roboticist at Google