You are on page 1of 22

YABBASYetAnotherBareBonesArduino(onStripboard)All

ShowAllItems
ThisInstructablewilldemonstratethebuildingofabarebones(andreallyinexpensive...lessthan$5)Arduinocompatible
modulethatcanbeputtogetheronasmallpieceofstripboardandcanbeusedeitheronabreadboardorindependently.
Thefollowinglinks/similarprojectswereusedasinspiration:
*http://www.instructables.com/id/SmallformfactorDIYArduinoonstripboard/
*http://tinkerprojects.blogspot.com/2012/06/minimalarduinoonsmallstripboard.html
*http://shop.moderndevice.com/products/rbbbkit
*http://txapuzas.blogspot.com/2010/07/paperduinostripboard.html
TheschematicisbasedoffoftheArduinoProMini(http:/rduino.cc/en/Main/ArduinoBoardProMini)andonlydiffersina
fewminor(optional)ways:
1.Thisdesignusesamorepowerfulvoltageregulator
2.Thisdesignusesamoreprecisecrystal(insteadofceramicresonator)
3.Thisdesignditchestheresetbutton(doyoureallyneedit?)
4.Thisdesignusesa1k(insteadof10k)resistorforthepowerindicatorLED

Prerequisites/ToolsRequired:
*SolderingIronwithfinetip
*Solder(fine)&Flux
*UtilityKnife
*Minineedlenosepliers(optional,butuseful)
*Multimeter(orvoltmeter)
*AnexistingArduino,oranyotherAVRprogrammer(neededtouploadthebootloader)
*AUSBtoSerialTTLadapter(usedtouploadprogramsafterthebootloaderisinplace)
PartsList(withaninexpensivesourcerecommendation):
*$0.2219rowx8columnstripboard(lessthan1/3ofa94x53mmstripboard)
>http://www.taydaelectronics.com/smallstripboard94x53mmcopper.html
*$1.003.50Atmega328P(ortheATMega168orATmega8iftheyareenoughforyourneeds)
>http://www.taydaelectronics.comtmega328ppuatmega328microcontrolleric.html
TIP:YoucangettheolderATmega8chipsoneBayforaround$1(ina10pack)thesedays,
orthelatestandgreatestATmega328PchipsoneBayforaround$2.20(ina5pack)
*$0.1128pinDIPICsocket
>http://www.taydaelectronics.com/28pindipicsocketadaptorsoldertype.html
TIP:Youcansubstitute2x14pinlengthsofSIP/DIPsocketadapterforahigherqualitysocket
*$0.23LM78055Vvoltageregulator
>http://www.taydaelectronics.com/lm7805l78057805voltageregulatoric5v15a.html
*$0.1016MHzcrystal
>http://www.taydaelectronics.com/16000mhz16mhzcrystalhc49slowprofile.html
*$0.02(2)22pFceramicdisccapacitors
>http://www.taydaelectronics.com/10x22pf50vceramicdisccapacitorpkgof10.html
*$0.03(3)100nF/0.1uFceramicdiskcapacitors
>http://www.taydaelectronics.com/10x01uf50vceramicdisccapacitorpkgof29.html
*$0.03100uF10Velectrolyticcapacitor
>http://www.taydaelectronics.com/100uf10v105cradialelectrolyticcapacitor5x11mm.html
*$0.03100uF25Velectrolyticcapacitor
>http://www.taydaelectronics.com/100uf25v105cradialelectrolyticcapacitor6x11mm.html

*$0.02RedLED3mm
>http://www.taydaelectronics.com/led3mmred.html
*$0.02GreenLED3mm
>http://www.taydaelectronics.com/led3mmgreen.html
*$0.012330ohm1/4wattmetalfilmresistor1%
>http://www.taydaelectronics.com/330ohm14w1metalfilmresistor.html
*$0.0121Kohm1/4wattmetalfilmresistor1%
>http://www.taydaelectronics.com/10xresistor1kohm14w1metalfilmpkgof10.html
*$0.01210Kohm1/4wattmetalfilmresistor1%
>http://www.taydaelectronics.com/10xresistor10kohm14w1metalfilmpkgof10.html
*HeaderOptions:
*$0.39DIP/SIPsocketadapter(greatforwiresorforbuildingahighqualitysocket)
>http://www.taydaelectronics.com/30pindipsipicsocketsadaptorsoldertype.html
*$0.24FemalePINheader
>http://www.taydaelectronics.com/40pin254mmsinglerowfemalepinheader.html
*$0.15MalePINheader
>http://www.taydaelectronics.com/40pin254mmsinglerowpinheaderstrip.html
*Shipping(fromtaydaelectronics):~$1.20
*TOTAL(withoutshipping):~$2$4.75

Step 1: The Stripboard Design


ShowAllItems
Note:DIYLayoutCreatorwasusedtoproducethisdesign
>https://code.google.com/p/diylayoutcreator/

Step 2: Prepare the stripboard for soldering

ShowAllItems
Usingautilityknifecutthecoppertracesasindicated.

Keepinmindtheboardwillbeamirrorimagewhenyouflipitover.
Ifinditeasiesttofirstscoretheboardtryingtojustbarelycutthroughthecopper.Then,Iangletheknifeabit(tocutav
groove)andproceedtomakethecutdeeperfrombothsides.
Becarefulsothatyouleaveenoughcoppertosoldertheholesoneithersideofanycut,whileensuringthatenoughcopper
isremovedtoensurethecopperistrulyseparatedfromeithersideandwon'tbridgewhensoldered.

Step 3: Solder the ground and positive voltage wires

ShowAllItems
1.Cutthegroundandpositivevoltagewirestolengthandstriptheends.

IusethewirefromanoldRJ45networkcable.Makesurethewireissolidandnotstranded.
2.Placethewiresintothestripboardasindicated.
Youmayfinditdifficulttogettwowiresintoonehole.Ifindthattakingaminineedlenosepliersandmashingonthe
endsofbothwiresabithelps.
3.Doublecheckthatthewireplacementmatchesthedesignandthatthemetalinthewiresarenottouchingeachother.
4.Finally,fliptheboardoverandsolderthewiresinplace.

Step 4: Solder the DIP IC socket

ShowAllItems
PlacetheDIPICsocket(or2x14pinDIP/SIPsocketadapters)andsoldertheminplace.

Step 5: Solder the resistors and ceramic capacitors

Step 5: Solder the resistors and ceramic capacitors

ShowAllItems
1.Bendtheleadsofeachcomponentbasedonthedistanceitwillneedtospan.
Note:Aeasytobuildbenderjigmadefromasparepieceofprotoboardcancomeinhandyhere(seepicture).
2.Placeeachcomponentintothestripboardintheappropriatelocation.Paycarefulattentiontothecomponentsthatshare
ahole.
3.Doublecheckthateachcomponentisproperlyplacedaccordingtothediagram.
4.Proceedtosoldereachcomponentandcliptheleadstoareasonablelength.

Step 6: Solder the LEDs and Capacitors

ShowAllItems
1.PlacetheLEDsandelectrolyticcapacitorsaccordingtothediagram.
Note:LEDsandelectrolyticcapacitorsaredirectionalandmustbeplacedintheproperorientation.
*ForLEDs,placetheCathodetowardsground.
LookinginsideanLED,theCathodeisusuallythelargerpad,butthesmallerlead.
(seepicture,source:http://www.societyofrobots.com/electronics_led_tutorial.shtml)
*Electrolyticcapacitorsshouldhaveamarkingonthelabel('')
whichindicateswhichleadshouldbeplacedtowardsground.
2.DoublecheckthattheLEDsandcapacitorsareplacedproperly.
3.Proceedtosoldertheminplaceandcuttheirleadstoareasonablelength.

Step 7: Solder the PIN headers

ShowAllItems
1.CutthePINheadersofyourchoiceinsectionsof3pins,5pins,12pins,and14pins.

YoucanusevarioustypesofPINheadershere(ornoneatall)dependingonhowyouwanttousetheboard.
Choicesinclude:
*Standardfemaleheaders:Goodforplugginginsubboardsthatusestandardmaleheaders.
*Standardmaleheaders:Goodforpluggingintobreadboard.
*SIP/DIPsocketadapters:Goodforplugginginsolderlessjumperwires.
*Noheaders:Goodfordirectsolderingofwires/subboardsforamorepermanentinstallation.
Iwantedtousemineonabreadboard,soIusedstandardmaleheadersstickingallthewayoutthebottom.
TIP:ImadeaspecialPINheadertoalloweasyplugginginofmyUSBtoSerialTTLadapter.Tomakethis,Itooka
standardmale12pinheader,removed6ofthepinsandsubstitutedlongerpinsintheirplace(seepicture).
2.PlacethePINheadersintheirappropriatelocationsaccordingtothediagram.
3.ProceedtosolderthePINheadersinplace.
TIP:IhavefoundthatPINheadersareMUCHmoreeasilysolderedifyouusealittlebitofflux.Ihavealsofoundthatthis
helpsholdthePINheadersinplaceuntilyoucangetthemsoldered.

Step 8: Solder the crystal and voltage regulator

ShowAllItems
Finally,placeandsolderthecrystalandvoltageregulatoraccordingtothediagram.

Thesolderingportionisnowdone!
Itisagoodideatocleanupthebackoftheboardatthispoint.Iuseanoldtoothbrushdippedinrubbingalcoholand
vigorouslyscrubtheremainingfluxandsolderresidue.
Nowisalsoagoodtimetoaddsoldertoanyjointsthatmayneedmore.

Step 9: Test the board


ShowAllItems
Beforeinsertingthe'relatively'expensiveATmegachipintotheboarditisagoodideatoverifythatafewthingsworkas
expectedfirst.
Pluginanappropriatevoltagesource(~720volts)andconnectit(appropriately)totheGNDandVINpins.
UseamultimetertoverifythatthevoltagebetweentheGNDandVCCpinsisaround5volts.
Also,verifythattheredpowerindicatorLEDisilluminated.

Step 10: Upload the bootloader (optional)


ShowAllItems
Note:ThisstepcanbeskippediftheATmegachipyouareusingalreadyhasanappropriatebootloaderuploadedtoit.
1.ConnecttheAVRprogrammerofyourchoice.
ConnecttheGND,VCC,/RESET,MOSI,MISO,SCKpins.
Note:WhichprogrammertouseisoutsidethescopeofthisInstructable.
IhappentobeusingacustombuiltprogrammerbasedoffofthepopularUSBaspdevice.

TIP:IfyoualreadyhaveaworkingArduino,youcanuseittoprogramthebootloaderintothisATmegachip.Takealook
aroundtheinternetatoneofthemanytutorialsforhowtodothis.
T o o l s

2.OpentheArduinoIDE.
3.Verifythattheproperprogrammerisselected(underTools>Programmer)
4.Verifythattheproperboardisselected(underTools>Board)
*ForanATmega8,usethe'ArduinoNGorolderw/ATmega8'
*ForanATmega168usethe'ArduinoProorProMini(5V,16MHz)w/ATmega168'
*ForanATmega328usethe'ArduinoProorProMini(5V,16MHz)w/ATmega328'
5.Uploadthebootloader(usingTools>BurnBootloader)
AtthispointtheArduinoIDEwilltakeaminuteortwotoconnecttoyourdevicethroughtheprogrammer,verifythechip,
anduploadthebootloader.YoushouldseethegreenactivityLEDflashabunchoftimes.

UPDATE:
IfoundthattheOptibootbootloaderismuchnicertousethantheonethatcomesprepackagedwiththeArduinoIDE.
https://code.google.com/p/optiboot/
Someoftheimprovementsinclude:
*Itusesonly512bytesofflashinsteadofthe1KBor2KBthattheArduinobootloaderuses
*Itisfastertouploadsketchesbyusingamuchfasterbaudrate(115200insteadof19200inmycase)
*Afteranuploadorreset,itrunsyoursketchesmuchfaster
Inordertousethis:

1.Downloadandextractthe.zipfileintothehardwaredirectoryinyourArduinosketchesdirectory.Createthehardware
directoryifitdoesn'texist.
2.RestarttheArduinoIDE
3.ChooseoneofthenewboardthatshowupunderTools>Board
*ForanATmega8,usethe'[Optiboot]ArduinoNGorolderw/ATmega8'
*ForanATmega168usethe'[Optiboot]ArduinoProorProMini(5V,16MHz)w/ATmega168'
*ForanATmega328usethe'[Optiboot]ArduinoProorProMini(5V,16MHz)w/ATmega328'
4.Verifythattheproperprogrammerisselected(underTools>Programmer)
5.Uploadthebootloader(usingTools>BurnBootloader)

Step 11: Upload a test program


ShowAllItems
Finally,weshouldnowbeabletoconnecttoandusethedevicelikeanormalArduino.
Let'sconnectaUSBtoSerialTTLadapteranduploadatestprogramusingtheArduionIDE.
1.ConnecttheUSBtoSerialTTLadapter.
ConnecttheGND,VCC,DTR,RX,TXpins.
Note:WhichUSBtoSerialadaptertouseisoutsidethescopeofthisInstructable.Justensuretheadapterexposesthe
DTRlineasitisneededfortheautoresetprocess.
IhappentobeusingaCP2102adapterfromeBay~$2.35(http://www.ebay.com/itm/181164801515).

2.OpentheArduinoIDE.
3.Openthe'Blink'example(File>Examples>01.Basics>Blink)
4.Verifythattheproperboardisselected(underTools>Board)
*ForanATmega8,usethe'ArduinoNGorolderw/ATmega8'
*ForanATmega168usethe'ArduinoProorProMini(5V,16MHz)w/ATmega168'
*ForanATmega328usethe'ArduinoProorProMini(5V,16MHz)w/ATmega328'
5.VerifythattheproperSerialPortisselected(underTools>SerialPort)
6.Uploadtheprogram(usingFile>Upload)
Atthispoint,theArduinoIDEwilltakeaminuteortwotocompiletheprogram,resetyourdeviceandthenconnecttoyour
device'sbootloaderthroughtheUSBtoSerialadapter,verifythechip,uploadtheprogram,andfinallyresetyourdeviceto
runthenewprogram.
Ifeverythingissuccessful,youshould(eventually)seethegreenLEDstartblinkingonandoffataboutaonesecond
interval.
CONGRATULATIONS!Younowhavea$25breadboardfriendlybarebonesArduinoreadytoaddtoyour
toolboxoruseforyournextproject.

Step 12: Variations


Itispossibletoreducethepartslistevenfurtherdependingonwhichfeaturesonefindsimportant.
Herearesomeexamples:
1.Don'tpopulatethevoltageregulatoror25V100uFcapacitorbetweenGNDandVINifyouarealwaysgoingtosupply

thisboardwithastable5Vsource(throughtheGNDandVCCpins).
2.Don'tpopulatethe1kresistororredLEDifyoudon'twantapowerindicator.
3.Don'tpopulatethe330ohmresistororgreenLEDifyoudon'twanttheactivityindicator.
4.Don'tpopulatethe16MHzcrystalor2x22pFcapacitorsifyoucanmakeduewiththeinternalRCoscillator.
Note:Thisisanadvancedusagescenariothatwouldalsorequireacustomfuseselection,bootloader,andmodificationsto
theArduinosourcefiles.
Alternative:Replacethe16MHzcrystaland2x22pFcapacitorswitha16MHzceramicresonatorifyoudon'tneedthe
precisionthatacrystalprovides.
5.Don'tpopulatethe100nFcapacitorbetweentheAREFandGNDpinsifyouaren'tusingtheADC.
6.Don'tpopulatethe100nFcapacitorbetweenthe/RESETandDTRpinsifyourUSBtoSerialadapterdoesn'tneedit(or
alreadyprovidesit)
Youmightbeabletodoawaywiththe100uF10VcapacitorbetweenGNDandVCCifyourpowersourceislocatedclose
enoughandisstableenough.
So,bareminimum(forastablesystem),wouldbetheATmegachip(obviously),the100nFcapacitorbetweentheGNDand
VCCpins,andthe10kresistorbetweenthe/RESETandVCCpins.

Downloaded using:
instructables-pdf.abuouday.com Privacy Policy

You might also like