Tải bản đầy đủ (.pdf) (646 trang)

OReilly make projects small form factor PCs apr 2008 ISBN 059652076x

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.19 MB, 646 trang )

SmallFormFactorPCs
byDuaneWessels;MatthewJ.Weaver
Publisher:O'Reilly
PubDate:April22,2008
PrintISBN-13:978-0-596-52076-2
Pages:304
TableofContents|Index

Overview
Shoeboxsizedandsmaller,smallformfactorPCscanpackas
muchcomputingmuscleasanythingfromaPDAtoafull-sized
desktopcomputer.Theyconsumelesspower,havefeworno
movingparts,andareveryquiet.Whetheryouplantouseone
asastandalonePCorwanttoembeditinyournexthacking
project,asmallformfactorPCmaybethenextthingyoubuild.
SmallFormFactorPCsistheonlybookavailablethatshowsyou
howtobuildsmallformfactorPCs--fromkitsandfromscratch
--thataremoreinterestingandmorepersonalizedthanwhata
full-sizedPCcangiveyou.Includedinthebookareprojectsfor
buildingpersonalvideorecorders,versatilewirelessaccess
points,digitalaudiojukeboxes,portablefirewalls,andmuch
more.Thisbookshowsyouhowtobuildeightdifferent
systems,fromtheshoebox-sizedShuttlesystemdowntothe
stick-of-gumsizedgumstix.Withthoroughillustrationsand
step-by-stepinstructions,SmallFormFactorPCsmakesiteasy
foranyonewhowantstogetstartedbuildingthesetiny
systems.Smallformfactorcomputingistakingoff,andthis
guideisanabsolutemustforanyonewhowantstogetinon
thelaunch.



SmallFormFactorPCs
byDuaneWessels;MatthewJ.Weaver
Publisher:O'Reilly
PubDate:April22,2008
PrintISBN-13:978-0-596-52076-2
Pages:304
TableofContents|Index

Preface
Introduction
WhatIsSmallFormFactor?
WhySmallFormFactor?
SmallFormFactorSystems
MoreCoolHardware
DigitalAudioJukebox
IntroducingtheVIAEPIA-M
AdditionalHardware
Step1:InstallandConfigureGentooLinux
Step2:XWindowsandXMMS
Step3:InfraredRemoteControl
CaseModding
ExtraCredit
DigitalVideoRecorderwithMythTV
IntroducingtheShuttleST62KXPC
OperatingSystem:GentooLinux
XWindows
MythTV
AddingaRemoteControl
StartingMythTVAutomatically
UsingYourTVastheDisplay

ExtraCredit


HomeNetworkGateway
IntroducingtheSoekrisnet4501
AdditionalHardware
InstallingOpenBSD
FromInstallationtoGateway
PacketFilter(pf)
ExtraCredit
NetworkMonitor
IntroducingtheSoekrisnet4801
AdditionalHardware
InstallingFreeBSD
Arpwatch
Nagios
Snort
RRDTool
ExtraCredit
Wi-FiExtender
IntroducingtheAccessCube
AssemblingtheSystem
ExploringtheAccessCube
Wi-FiConfiguration
AntennaOptions
UsingtheWi-FiExtender
BuildingaConsoleCable
ExtraCredit
APortable,USB-Powered,BridgingFirewall
IntroducingtheOpenBlockS

SSDLinux
TurningtheOpenBlockSintoanEthernetBridge
UsingtheFirewall
PoweringOpenBlockSviaUSB
ExtraCredit


CheapWi-FiSSHClient
IntroducingtheZipItWirelessMessenger
UpdatingtheZipItFirmware
PlayingwiththeBURN3Firmware
LoadingOpenZipIt
PlayingwithOpenZipIt
ExtraCredit
BluetoothLEDSign
Introducingthegumstix
AssemblingtheSystem
Exploringthegumstix
BuildingSoftwareforthegumstix
LearningAboutBluetooth
ThePro-LiteLEDSign
PuttingItAllTogether
SendingMessagestotheSign
ExtraCredit
RunninganNFSServer
AboutNFS
TheExportsFile
StartingNFSServices
Mounting
Index



SmallFormFactorPCs
byMatthewWeaver&DuaneWessels
Copyright©2008O'ReillyMedia,Inc.Allrightsreserved.
PrintedinU.S.A.
PublishedbyMake:Books,animprintofMakerMedia,adivision
ofO'ReillyMedia,Inc.,1005GravensteinHighwayNorth,
Sebastopol,CA95472.
O'Reillybooksmaybepurchasedforeducational,business,or
salespromotionaluse.Formoreinformation,contactour
corporate/institutionalsalesdepartment:800-998-9938or

PrintHistory:April2008:FirstEdition
Publisher:DaleDougherty
AssociatePublisher:DanWoods
ExecutiveEditor:BrianJepson
CreativeDirector:DanielCarter
Designer:GerryArrington
ProductionManager:TerryBronson
CoverPhotography:DuaneWessels
TheO'ReillylogoisaregisteredtrademarkofO'ReillyMedia,
Inc.TheMAKE:Projectsseriesdesignations,SmallFormFactor
PCs,andrelatedtradedressaretrademarksofO'ReillyMedia,
Inc.Thetrademarksofthirdpartiesusedinthisworkarethe
propertyoftheirrespectiveowners.
ImportantMessagetoOurReaders:Yoursafetyisyourown
responsibility,includingproperuseofequipmentandsafety
gear,anddeterminingwhetheryouhaveadequateskilland



experience.Chemicals,electricity,andotherresourcesusedfor
theseprojectsaredangerousunlessusedproperlyandwith
adequateprecautions,includingsafetygear.Someillustrative
photosdonotdepictsafetyprecautionsorequipment,inorder
toshowtheprojectstepsmoreclearly.Theseprojectsarenot
intendedforusebychildren.
UseoftheinstructionsandsuggestionsinSmallFormFactor
PCsisatyourownrisk.O'ReillyMedia,Inc.andtheauthors
disclaimallresponsibilityforanyresultingdamage,injury,or
expense.Itisyourresponsibilitytomakesurethatyour
activitiescomplywithapplicablelaws,includingcopyright.
ISBN-10:0-596-52076-X
ISBN-13:978-0-596-52076-2


Preface
Miniaturizationhasbeenoneofthegreatsuccessstoriesof
computerengineering.Mostofusknowthattheworld'sfirst
computers,suchasENIACandthevariousMarkIs,werehuge
machinesthatoccupiedwholerooms.Bytheearly1980swe
hadmorepowerfulcomputersthatsatonourdesks.But
personalcomputersstoppedshrinkingforthenext20yearsor
so.WhyismyPentium4systemfrom2005aboutthesame
sizeasmyAppleIIfrom1981?
Onereason,ofcourse,isthatwhilethesizeofthecomputer
remainedthesame,engineerswereabletopackmoreintothat
space.Bothprocessorsandmemoryhaveincreasedindensity
overtheyears,generallyfollowingMoore'sLaw.Anotherreason
isthatequipmentmanufacturersnowbuildmorefeaturesinto

thehardware.MyPentium4motherboardincludesbuilt-in
Ethernet,video,sound,USB,andFireWire,inadditiontothe
old-fashionedserialandparallelports.Inthegoodol'days,
eachofthosewouldhaverequiredanexpansioncardofsome
sort.Finally,certainphysicalcharacteristicsofourcomputer
systemshaveremainedthesameovertheyearsintheinterest
ofcompatibility.PCIcardsarethesameheightasISA
expansioncardssothatbothfitinpastandfuturecomputer
cases.The200MBharddrivefrommyIBMPS/2fitsinthe
samebayasmyP4'snew250GBharddrive.
Inrecentyearswehaveseenarenewedinterestin
miniaturizationofcomputersystems.CompaniessuchasVIA
TechnologiesandSoekrisEngineeringwereamongthefirstto
marketsmall,low-power,general-p-urposecomputersystems
toindividualconsumers.Peoplebegantorealizethatcertain
tasksandapplications,suchasroutingandfirewalling,don't
requiresuper-fastsystems.Whowantsabig,hot,noisy
computerintheirhomeorofficewhenasmall,silent,minicomputerworksjustaswell?
Thephrasesmallformfactor(orSFF)usuallyreferstopersonal


computerswithasmallfootprint.Thatis,aSFFPChasmostof
thesamefeaturesasitsstandard-sizedancestor:fast
processor,plentyofmemory,harddrive,video,sound,etc.SFF
PCsusuallyhavefewerexpansionoptionsduetotheirsmaller
size,however.
Inthisbookweconsiderevensmaller,andlesspowerful,
systemsassmall-form-factorcomputers.Itwouldbeastretch
tocallthemPCs,sincemanydon'thaveharddrives,video,or
sound.Forsome,itmaybemoreappropriatetothinkofthem

asembeddeddevices,althoughthatisanothervagueterm.
Whateveryouorwecallthem,wethinkyou'llenjoylearning
aboutthesesmallcomputers.

HowtoUseThisBook
Ourprimarygoalwiththisbookistoexposeyoutoavarietyof
small-form-factorcomputersanddevices.Wewanttoshowyou
howtheywork,howtheylook(insideandoutside),andhow
youcanusethem.We'vecomeupwithanumberofprojects
thatdemonstratetheirfeaturesandcapabilities.Wehopethat
youfindtheprojectsbothinterestinganduseful.
Evenifyou'renotinterestedinputtingSFFcomputerstothe
usesthatwe'vedocumented,you'llstillfindusefulinformation
inthisbook.Forexample,we'llshowyouhowtoloadan
operatingsystemontoaCompactFlashcardusingTFTPand
NFS,andhowtobootstraptheOSontoalaptopharddrivefrom
anotherPC.Ifyouhaveotherprojectsorapplicationsinmind,
theinformationinthisbookwillhelpyouselectanappropriate
platform.Ourprojectdescriptionsaimtohelpyouunderstand
theadvantages,anddisadvantages,ofthecomputersthat
we'veused.
Anotherreasontoreadthebook(anddotheprojects)istosee
howeasilyyoucangetLinuxandBSDoperatingsystems
runningonnon-x86-basedprocessors.Thefourlargestsystems
inthebookhaveIntelx86orx86-compatibleprocessors.The
smallestcomputers,ontheotherhand,useMIPS,PowerPC,


ARM,andXScaleprocessors.Forsomeofthemwe'llevenshow
youhowtocross-compileyourownprograms.


WhoShouldReadThisBook
We'vewrittenthisbookforpeoplewholiketotinkerwithboth
computerhardwareandsoftware.Alongthesamelines,we
expectthatyouhavea"doityourself"attitude,eitherbecause
yousimplywanttounderstandhowsomethingworks,youwant
someextrafeatures,oryoudon'ttrustproductmanufacturers
togetitright.Wealsoassumethatyoualreadyhaveaminor
fascinationwithminiaturecomputers.Ifyoustillneedsome
convincing,checkoutChapter1forthelistofthingsthatwe
especiallylikeaboutSFFcomputers.
Mostofourprojectsinvolvesomehardwareassembly.Forthe
mostpart,however,youwon'tneedanyfancytools.
Screwdriversandplierswillcomeinhandy.Theonlytimeyou'd
needasolderingironistobuildacustomcableortwo.
Wedevotethemostspaceineachchaptertoprovidingdetailed
instructionsonhowtoinstallandconfigurethesoftware
components.Everyprojectisbasedonanopensource
operatingsystem,includingLinux,OpenBSD,andFreeBSD.
Previousexposuretoatleastoneoftheseoperatingsystems
willbehelpful.However,wetrytonotmaketoomany
assumptionsaboutyourexperience.Withalittlepatienceand
perseverance,evenfirst-timeUnixuserswillbeabletogetup
andrunningwithourinstructions.

OrganizationofThisBook
Thisbookincludeseightindividualsmall-form-factorprojects,
eachinitsownchapter.We'vechosentoplacechaptersroughly
inorderofdecreasingcomputersize.We'llstartwithacoupleof
Mini-ITXbasedsystemsandfinishwithacomputerthesizeofa

stickofgum.Hereisabriefdescriptionofeachcomputer:
Chapter1,Introduction


Theintroductiontothebookincludesabriefdiscussionof
what"smallformfactor"meansandwhyyoumightbe
interestedinusingSFFsystems.Wealsointroduceyouto
thehardwarecomponentsusedforeachproject,including
wheretogetthemandabouthowmuchtheycost.

Chapter2,DigitalAudioJukebox
HereweturnaMini-ITXmotherboard,alittlememory,a
laptopharddrive,andaninfraredreceiverintoadigital
jukebox.TheIRreceiverallowsyoutocontrolthejukebox
withastandarduniversalremote.We'llshowyouhowto
installandconfigureGentooLinux,theXMMSaudioplayer,
andafewancillaryprograms.Ifyou'resoinclined,wealso
haveafewhintsformountingthecomponentsintoan
antiqueradiocabinet.

Chapter3,DigitalVideoRecorder
Inthisprojectweshowyouhowtobuildyourowndigital
videorecorder.Weusedthetoaster-sizedST62K"XPC"
fromShuttleandaTVtunercardfromHauppauge.Ofall
theprojectsinthebook,thisonerequiresthemostCPU
processingpowerandstoragecapacity.WeuseGentoo
LinuxastheoperatingsystemandMythTVfortheactual
DVRapplication.

Chapter4,HomeNetworkGateway

We'llshowyouhowtobuildyourownhome(orsmalloffice)
networkgatewayfromOpenBSDandaSoekrisnet4501.
Thisgatewayprotectsthesystemsonyournetworkwith
NATandastate-of-the-artfirewall.Italsoprovidesalocal
DNSserverandDHCPifyousodesire.TheSoekrisboxuses


aCompactFlashcardforstorage,whichallowsittobe
silentanduseverylittlepower.

Chapter5,NetworkMonitor
Inthisprojectwe'llhelpyoubuildasystemthatcan
monitorthehealthandstatusofasmallhomeoroffice
network.We'lluseSnortforpassivedetectionofmalicious
traffic,Nagiosforactivemonitoringofhostsandlinks,and
RRDTooltostoreandgeneratetrafficgraphs.Ouroperating
systemofchoiceisFreeBSD.ThehardwareisSoekris'
net4801,whichhasafasterCPUthanthenet4501and
acceptsalaptopharddrive.

Chapter6,Wi-FiExtender
WefeaturetheAccessCubefrom4GSystemsinthis
chapter,whichisalow-power,cube-shapeddevicedesigned
forwirelessapplications.IthasoneEthernetportandroom
fortwoMiniPCIWi-Ficards.We'lluseittobuildawireless
networkrouterthatyoucanusetoextendthereachof
existingwirelessnetworks.TheAccessCuberunsaversion
ofLinuxcalledOpenEmbedded.

Chapter7,PortableBridgingFirewall

ThisprojectisbasedonasmallcomputerfromJapancalled
OpenBlockS,whichhasaPowerPCprocessor,flashmemory,
serialport,andtwoEthernetinterfaces.Forstorageituses
eitheraCompactFlashcardoralaptopharddrive.The
OpenBlockSrunson5VoltsDC,whichmeansyoucan
poweritfromaUSBport.Theoperatingsystemis
SSD/Linux.


Chapter8,CheapWi-FiSSHClient
Here,weshowyouhowtoloadnewfirmwareontheZipIt
WirelessMessenger.TheZipItisacheaphandhelddevice
withathumbkeyboard,LCDdisplay,Wi-Fiinterface,and
verygoodbatterylife.WethinkitmakesagoodlittleSSH
clientthatyoucantakeplaceswhereyou'drathernottake
yourlaptopcomputer.

Chapter9,BluetoothLEDSign
Ourfinalprojectfeaturesthesmallestcomputerinthe
book.Thegumstixisamodulardevicerunninga
customizedLinuxdistribution.Theparticularmodelthat
we'vechosenhasabuilt-inBluetoothinterface.We'lluseit
toaddBluetoothconnectivitytoascrollingLEDmessage
sign.

RecommendedReading
Whilereadingthisbook,youmaywanttoconsultsomeofthese
otherO'Reillyresourcesformoreinformation.
WirelessHacks,SecondEditionand/orLinuxUnwired
LinuxinaNutshellorLinuxCookbook

BSDHacks
UnixPowerTools,ThirdEdition

UsingCodeExamples
Thisbookisheretohelpyougetyourjobdone.Ingeneral,you
mayusethecodeinthisbookinyourprogramsand
documentation.Youdonotneedtocontactusforpermission
unlessyou'rereproducingasignificantportionofthecode.For
example,writingaprogramthatusesseveralchunksofcode


fromthisbookdoesnotrequirepermission.Sellingor
distributingaCD-ROMofexamplesfromO'Reillybooksdoes
requirepermission.Answeringaquestionbycitingthisbook
andquotingexamplecodedoesnotrequirepermission.
Incorporatingasignificantamountofexamplecodefromthis
bookintoyourproduct'sdocumentationdoesrequire
permission.
Weappreciate,butdonotrequire,attribution.Anattribution
usuallyincludesthetitle,author,publisher,andISBN.For
example:"MAKEProjectsSmallFormFactorPCs,byDuane
WesselsandMatthewWeaver.Copyright2008O'ReillyMedia,
Inc.,059652076X."
Ifyoufeelyouruseofcodeexamplesfallsoutsidefairuseor
thepermissiongivenabove,feelfreetocontactusat

Codesamplesandconfigurationfilesusedinthisbookare
availablefrom />
ConventionsUsedinThisBook
Thefollowingtypographicalconventionsareusedinthisbook:


Italic
Usedtoindicatenewterms,filenames,fileextensions,and
directories.Forexample,apathinthefilesystemwill
appearas/Applications/Utilities.

ConstantWidth
Usedtoindicatecommands,options,classes,keys,
properties,utilities,andprogramnames,andtoshowthe
contentsoffilesortheoutputfromcommands.


ConstantWidthBold
Usedinexamplesandtablestoshowcommandsorother
textthatshouldbetypedliterallybytheuser.

ConstantWidthItalic
Usedinexamplesandtablestoshowtextthatshouldbe
replacedwithuser-suppliedvalues.

Acknowledgments
Duanewouldliketothankthefollowingpeopleandcompanies:
Mini-box.comfordonatingpoweradapters,anIDE-to-CF
adapter,andothertoys.Plat'HomeinJapan
(fordonatingthe
OpenBlockS/266.Shuttle(for
donatingtheZenST62kXPC.O'ReillyMediaforthegumstix.
Mysincerethankstoallthetechnicalreviewerswhotookthe
timetoreaddraftsofthebookandprovidefeedback:Craig
Hughes,DaveHylands,JoelJaeggli,KenKeelan,Fernando

Maymi,BrendanWhite,andN.E.Whiteford.Iknowmyselfthat
ittakesalotoftimeandefforttobeareviewer.Youhave
earnedmyrespectandthanksforsteppinguptothetask.
Asusual,it'sbeenapleasuretoworkwiththefolksatO'Reilly
Media.Oureditor,BrianJepson,didn'tgiveuponusevenafter
missingafewdeadlines.Andtoalltheothertop-notchO'Reilly
folks,thanksforturningabunchofXMLmumbo-jumbointoa
beautiful-lookingbook.
TomywifeAnne:thankyouforallowingmetotakeonand
completethisbook.Youhavenoideahowmuchyoursupport
meanstome.ToColin,whoisjustnowturningoneyearold:


remindmesomedaytotellyouhowmuchfunitwastoworkon
thebookduringyournaps,andafterfallingasleepwithyou
eachnight.SleepwellMugs!
Matthewwouldliketothankthefollowingpeopleand
companies:
PascalDornier(fordonatingaWRAP
board.Shuttle(fordonatingan
SN85G4XPC,andAMD(fordonatinga
suitableAthlonCPU.Mikrotik(for
donatingaRouterBOARD230.
IowemylargestdebtofgratitudetoDuane.He'snotonly
responsibleforthebestworkinthisbook,he'salsogivenmea
legupmoretimesthanIdeserveone.
EveryoneatO'Reillyhasbeenextremelypatientandeasyto
workwith.BrianJepsonhasbeeninvaluableincountlessways.
Lastly,thankstomyfriendsandcolleaguesforalltheirhelp:
AmySilver,forhersupportandadvice;JaredSpiegel,forhis

guidancewiththeoccasionaltechnicaljam;DavidHardy,Tanya
Bokat,andGregWillsonatNedernetforeverything.

Safari®Enabled
WhenyouseeaSafari®enabledicononthecoverofyour
favoritetechnologybook,thatmeansit'savailableonline
throughtheO'ReillyNetworkSafariBookshelf.
Safarioffersasolutionthat'sbetterthane-books:it'savirtual
librarythatletsyoueasilysearchthousandsoftoptechbooks,
cutandpastecodesamples,downloadchapters,andfindquick
answerswhenyouneedthemostaccurate,currentinformation.
Tryitforfreeat.

HowtoContactUs
Youcancontacttheauthorsat


and
Pleaseaddresscommentsandquestionsconcerningthisbookto
thepublisher:
O'ReillyMedia,Inc.
1005GravensteinHighwayNorth
Sebastopol,CA95472
(800)998-9938(intheUnitedStatesorCanada)
(707)829-0515(internationalorlocal)
(707)829-0104(fax)
Wehaveawebpageforthisbook,wherewelisterrata,
examples,andanyadditionalinformation.Youcanaccessthis
pageat:
/>Tocommentorasktechnicalquestionsaboutthisbook,send

emailto:

Formoreinformationaboutourbooks,conferences,Resource
Centers,andtheO'ReillyNetwork,seeourwebsiteat:



Introduction
Inthisbookwepresenteightprojectsbasedaroundsmallform
factorcomputers.Beforedelvingintothoseprojects,we'll
spendalittletimetalkingaboutwhatthetermsmallformfactor
(SFF)meanstousandwhywethinkSFFsystemsare
interesting.Wealsointroducethehardwareforeachprojectin
thischapter,andfinishupwithalistofotherSFFsystemsthat
weweren'tabletoincludeinthisbook.

WhatIsSmallFormFactor?
Formanycomputerenthusiasts,thephrasesmallformfactor
bringstomindcube-shapedsystemsaboutthesamesizeasa
stackofbooks.Ifyouvisitasitesuchaswww.sfftech.com,
you'llseemanysuchsystems.Thesedaystheygenerallyhave
aPentium4orAthlonprocessor;acoupleofharddrivebays;
oneortwoPCIexpansionslots;built-inaudio,video,Ethernet,
USB,FireWire;andmore.Theymakegreatdesktop
replacementsandareoftenusedas"mediacenter"PCs.
Thisbooktakesthesmall-form-factorconceptafewsteps
furthertoincludetheverywiderangeofsmall,general-purpose
computersystemsnowavailabletoindividualconsumers.Until
recently,smallcomputerswerelargelyconsideredembedded
systemsthatrancustomsoftwareapplications.Theywere

availableonlyinlargequantitiestocommercialusersand
systemintegrators.
ThelargestsystemthatweuseinthisbookisaShuttleXPC.
CominginaclosesecondisaMini-ITXmotherboardfromVia
Technologies.Thosearetheonlysystemsinthebookthat
requirefansforcooling.NextinsizearetwoSoekrisboxes,
whicharesmallerthanthisbook.Gettingevensmaller,wehave
acoupleofcomputersthatareaboutthesamesizeasanapple
oranorange.Finally,we'lltalkabouttwocomputersthatcanfit
inyourpocket.


Sowhatdothesesystemshaveincommon?Oneansweristhat
theyallappealtoussimplybecauseoftheirsize.Asgeeksand
gadgetfreaks,wearealwaysfascinatedwithsmallerand
smallerphones,cameras,musicplayers,andcomputers.The
trendisalwaystowardsmallerandsmallerdevices,oratleast
towardpackingmoreperformanceandfunctionalityinthesame
space.
Anothercommoncharacteristicisthattheycanallrunopen
sourcesoftware,suchasLinux,BSDUnix,andamyriadof
additionalapplications.ThismeansthattheseSFFsystemshave
acertainhardwareopennessaswell.Eventhoughthe
computersareextremelysmall,theyarestill"PCcompatible."
Forthemostpart,youwon'thavetoworryaboutbuying,
finding,orwritingaspecialdrivertouseanyofthebuilt-in
serial,audio,Ethernet,Wi-Fi,andotherinterfaces.Opensource
isnotnecessarilyarequirement,however.Youcancertainlyrun
MicrosoftWindowsontheShuttle-andMini-ITX-sizedsystems.
YoucanprobablyevenrunDOSonthesmaller,x86-based

computers.


Introduction
Inthisbookwepresenteightprojectsbasedaroundsmallform
factorcomputers.Beforedelvingintothoseprojects,we'll
spendalittletimetalkingaboutwhatthetermsmallformfactor
(SFF)meanstousandwhywethinkSFFsystemsare
interesting.Wealsointroducethehardwareforeachprojectin
thischapter,andfinishupwithalistofotherSFFsystemsthat
weweren'tabletoincludeinthisbook.

WhatIsSmallFormFactor?
Formanycomputerenthusiasts,thephrasesmallformfactor
bringstomindcube-shapedsystemsaboutthesamesizeasa
stackofbooks.Ifyouvisitasitesuchaswww.sfftech.com,
you'llseemanysuchsystems.Thesedaystheygenerallyhave
aPentium4orAthlonprocessor;acoupleofharddrivebays;
oneortwoPCIexpansionslots;built-inaudio,video,Ethernet,
USB,FireWire;andmore.Theymakegreatdesktop
replacementsandareoftenusedas"mediacenter"PCs.
Thisbooktakesthesmall-form-factorconceptafewsteps
furthertoincludetheverywiderangeofsmall,general-purpose
computersystemsnowavailabletoindividualconsumers.Until
recently,smallcomputerswerelargelyconsideredembedded
systemsthatrancustomsoftwareapplications.Theywere
availableonlyinlargequantitiestocommercialusersand
systemintegrators.
ThelargestsystemthatweuseinthisbookisaShuttleXPC.
CominginaclosesecondisaMini-ITXmotherboardfromVia

Technologies.Thosearetheonlysystemsinthebookthat
requirefansforcooling.NextinsizearetwoSoekrisboxes,
whicharesmallerthanthisbook.Gettingevensmaller,wehave
acoupleofcomputersthatareaboutthesamesizeasanapple
oranorange.Finally,we'lltalkabouttwocomputersthatcanfit
inyourpocket.


Sowhatdothesesystemshaveincommon?Oneansweristhat
theyallappealtoussimplybecauseoftheirsize.Asgeeksand
gadgetfreaks,wearealwaysfascinatedwithsmallerand
smallerphones,cameras,musicplayers,andcomputers.The
trendisalwaystowardsmallerandsmallerdevices,oratleast
towardpackingmoreperformanceandfunctionalityinthesame
space.
Anothercommoncharacteristicisthattheycanallrunopen
sourcesoftware,suchasLinux,BSDUnix,andamyriadof
additionalapplications.ThismeansthattheseSFFsystemshave
acertainhardwareopennessaswell.Eventhoughthe
computersareextremelysmall,theyarestill"PCcompatible."
Forthemostpart,youwon'thavetoworryaboutbuying,
finding,orwritingaspecialdrivertouseanyofthebuilt-in
serial,audio,Ethernet,Wi-Fi,andotherinterfaces.Opensource
isnotnecessarilyarequirement,however.Youcancertainlyrun
MicrosoftWindowsontheShuttle-andMini-ITX-sizedsystems.
YoucanprobablyevenrunDOSonthesmaller,x86-based
computers.


WhySmallFormFactor?

YoumaybewonderingwhyyoushouldchooseaSFFplatform
foraparticulartaskinsteadofsimplyusingafull-sizePC.Most
peoplechoosesmallersystemsbecausetheyuselesspower,
producelessnoise,generatelessheat,and,ofcourse,takeup
lessspace.Notsurprisingly,thesecharacteristicsareallrelated
aswell.Let'slookateachcharacteristicinsomedepth:
Size
Sizeisanobviouscharacteristicofsmallcomputersystems.
YoumightchoosetouseaMini-ITXorXPCcomputeron
yourdesktopsimplybecauseittakesuplessspace,leaving
moreroomforyourpilesofpapers.Ifyou'dliketohavea
PCinyourentertainmentcenter,youprobablywantan
enclosurethatlooksgoodandblendsinwithyourother
devices(DVDplayer,audioamp).Smallcomputersare
oftenpopularwithgamerswhobringthemtoLANpartiesor
justovertoafriend'shouse.
Datacentersusuallychargeforbothspaceandbandwidth.
YoucanfittwoMini-ITXsystemsina19-inch-wide,1U
rack-mountableenclosure.
Anyonewhoregularlytravelswithcomputersisstrongly
motivatedtofindthesmallestonetodothejob.Ifthe
computerissmallenough,youcancarryitwithyouorfitit
inyourluggage.Ifyourcomputersmustbeboxedand
shipped,you'llappreciatethelowershippingcostsfrom
smaller,lightersystems.Maybeyou'dliketoputacomputer
inyourcar,onyoursailboat,orevenonyourbicycle.
Smallerisalsobetterforaccesspointsandsurveillance
systems,asyoumightwanttostashacomputerinacloset,
upintheceiling,onawall,oroutsidesomewhere.Finally,
theprospectofwearablecomputersisbecomingmoreand

morerealistic.


Power
Thepowerdemandsoftoday'shigh-enddesktopsare,in
ouropinion,justalittleoutrageous.Itisnotuncommonto
see500wattpowersuppliesthesedays.Onecompanyhas
begunsellinga1kilowattPSU.Ifyouhavemultiple
computersinyourhomeoroffice,youshouldreallythink
abouthowmuchpowertheyconsume,andwhetheryoucan
getbywithsomethingthatusesless.Forexample,you
don'tneedapower-hungryAMDAthlonorIntelPentium4
inyourofficeforyourfirewall.Alow-power(4watts)
computerdescribedinthisbookcandothejobjustaswell.
Powerisalsoimportantwhenyouthinkabout
uninterruptiblepowersuppliesandbatterybackups.When
thepowergoesout,a4wattSoekrisboxwillstayrunning
about10timeslongerthana40wattPentiumIIIsystem.
TherequirementsofsomeSFFsystemsarelowenoughthat
poweroverEthernet(whichdeliversamaximumof12.95
watts)becomesapossibility.Anotherniftyideaistosupply
powerfromasolarpanel.

Heat
Theheatgeneratedbyacomputerisdirectlyrelatedtothe
powerthatitconsumes.Insimpleterms,everywattthat
goesincomesoutofthecomputeraswasteheat.Data
centershavehugeairconditionersthatmovetheheatfrom
insidetooutside,consumingevenmorepowerinthe
process.Heatmaybeanimportantfactorfornon-datacenterenvironments,suchasyourhomeoroffice.During

thewinter,youcansortofuseacomputertohelpkeep
yourhousewarm,butduringthesummer,you'llbepaying
alittlemoretokeepthehousecool.


NotonlydoSFFsystemsgeneratelessheat,manyofthem
runwithoutanyfansatall,whichbringsusto...

Noise
Thereisalsoaroughcorrelationbetweenthenoisethata
computergeneratesandthepowerthatitconsumes.The
sourceofnoiseinmostcomputerscomesfromthingsthat
spin:harddrivesandfans.Youcancertainlybuildquietfullsizeddesktopsystemsbyusinglarge,low-speedfansand
powersupplieswithgiganticpassiveheatsinks.However,
you'llhaveahardtimemakingthemtrulysilent.
ManySFFsystems,ontheotherhand,havenomoving
partsatall.Theirprocessorsarepassivelycooled,andthey
useflashmemory,insteadofaharddrive,forpersistent
storage.


SmallFormFactorSystems
WeuseeightdifferentSFFsystemsfortheprojectsinthisbook,
plusvariousaccessories,cables,andconnectors.Here'sa
descriptionofeachhardwareplatform,includingwhereyoucan
buyyourownandhowmuchyoushouldexpecttopay.
VIAEPIAME6000
VIATechnologieshasbeenoneofthepioneersintheSFF
movement.TheirsmallMini-ITXmotherboards(17cmx17cm)
seemtobeespeciallypopularwithcasemoddersandpeople

whobuildmediaPCs.VIA'sMini-ITXmotherboardsaredifferent
thanmostbecausetheyhaveabuilt-inCyrixCPU.Cyrix
processorsare,formostpurposes,compatiblewiththeIntel
x86line.TheyarealsoknownforrunningcoolerthantheirIntel
andAMDcounterparts.WhileCyrixCPUsmaybeveryenergy
efficient,theydonothavethesamelevelsofperformanceas
theIntel/AMDofferings.
InChapter2,we'llshowyouhowtobuildadigitalaudio
jukeboxbasedontheVIAEPIAME6000.Theprocessorrunsat
600MHz,whichismorethanenoughfordecodingandplaying
music.TheME6000hasbuilt-inaudio,video,andEthernet,as
wellasanumberofotherstandarddevices.Tocompletethe
project,wealsousealaptopharddrive,onestickofSDRAM,
andaninfraredremote-controlreceiver.ME6000motherboards
areavailablefromanumberofonlineretailersforabout$150.
WealsousethePW-70ApoweradapterfromMini-box.com
(a.k.a.ItunerNetworks).ThePW-70Atakestheplaceofa
standardATXpowersupply.Ittakesa12VoltDCinputand
providesvariousoutputvoltagesonanATXconnector.Ituner
NetworkswasgenerousenoughtodonatethePW-70Aand
otheritemsforthebook.Visittheirsiteat.
ShuttleZenST62K


Shuttleisanothercompanythatislargelyresponsibleforthe
successandpopularityofSFFsystems.Their"XPCs"are
roughlycube-shapedboxesdesignedbothforlooksand
features.ShuttlegenerouslysentusanST62Kforuseinthe
book,andwefeltthatitwouldmakeagooddigitalvideo
recorder(DVR).ThisprojectisdescribedinChapter3.

TheST62Kisabare-bonessystem,whichmeansitcomeswith
onlythemotherboard,case,andpowersupply.TheCPU,
memory,andharddrivemustbepurchasedseparately.The
ST62KtakesanIntelSocket478(CeleronorPentium4)CPU
andDDRSDRAM.Weusea2.2GHzprocessor,512MBof
memory,anda120GBharddrive.Themotherboardhasbuiltinvideo,Ethernet,andsound.TheATIRadeon9100IGPvideo
processoralsohasabuilt-inTVoutput.Unfortunately,wehad
somedifficultygettingtheTVoutputtoworkwellwiththeX
WindowSystemonLinux.
TheST62Kiscurrentlysellingforabout$250fromanumberof
onlineretailers.However,duetorelativelyshortproductlife
cyclesinthecomputerindustry,itmaynotbeavailablebythe
timeyoureadthisbook(however,youwillbeabletofind
comparableofferingsfromShuttle).
AnotherkeycomponentoftheDVRisaTVtunercard.We
chosetherelativelyinexpensiveWinTV-GOfromHauppauge,
whosecardsarewellsupportedinLinux.Inretrospect,we
recommendthatyougetafancierversion,suchastheWinTVPVR250.TheST62KhasonePCIslot,whichiswheretheTV
tunercardwillgo.Wealsouseaninfraredreceiverand
universalremotecontrolforthisproject.
Soekrisnet4501
SoekrisEngineeringmakesanumberofsmall,low-power
computersthataredesignedtobeusedas
networking/communicationdevices.Theyareallaboutthesize
ofasmalltextbookandrunsilently.Theyfeaturevarying
numbersofEthernet,PCcard,andMini-PCIinterfaces.All


×