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