sparkfun Si4703 Technical document

12/13/2016 Si4703FMRadioReceiverHookupGuidelearn.sparkfun.com
https://learn.sparkfun.com/tutorials/si4703fmradioreceiverhookupguide?_ga=1.107488962.1700868332.1447681481 1/4
Si4703FMRadioReceiverHookupGuide
Si4703HookUpGuideSparkFunWishList
CONTRIBUTORS: TONI_K
FAVORITE 1
Introduction
ThisbreakoutboardenablesyoutotuneintoFMradiostations,usingtheSi4703FMtunerchipfromSiliconLaboratories.ThisICalsoworkswellforfilterandcarrier
detection,andenablesdatasuchasthestationIDandsongnametobedisplayedtotheuser.
RequiredMaterials
Youwillneedthefollowingmaterialstoworkonthisproject.
JumperWiresPremium6"F/FPackof10
PRT08430
ThisisaSparkFunexclusive!Theseare155mmlongjumperswithfemaleconnectorsonbothends.Usethesetojumperfromanymaleheaderonanyboard,…
BreakAwayMaleHeadersRightAngle
PRT00553
Arowofrightanglemaleheadersbreaktofit.40pinsthatcanbecuttoanysize.UsedwithcustomPCBsorgeneralcustomheaders.**Features:***…
SparkFunFTDIBasicBreakout3.3V
DEV09873
Thisisthenewestrevisionofour[FTDIBasic](http://www.sparkfun.com/commerce/product_info.php?products_id=8772).WenowuseaSMD6pinheaderon…
ArduinoProMini3283.3V/8MHz
DEV11114
It'sblue!It'sthin!It'stheArduinoProMini!SparkFun'sminimaldesignapproachtoArduino.Thisisa3.3VArduinorunningthe8MHzbootloader.Ar…
Keepinmindyouwillalsoneedstandardsolderingmaterialstocompletethistutorial,aswellaseitherasetofspeakersorheadphoneswitha3.5mmjacktoplugintothe
Si4703board.
SuggestedReading
Ifyouaren’tfamiliarwithanyoftheconceptsbelow,checkouttheselinksandgetcaughtupbeforemovingaheadwiththeSi4703.
UsingtheArduinoProMini3.3V
InstallinganArduinoLibrary
HowtoPowerYourProject
SerialCommunication
SerialTerminalBasics
WorkingwithWire
UsingGitHubtoSharewithSparkFun
HardwareOverview
TheSi4703BreakoutBoardbreaksoutmultiplepinsfromtheIC.Forthepowerbus,the3.3VandGNDpinsarebrokenout.KeepinmindthatwhiletheICistolerantup
to5V,thecommunicationpinsareonly3.3Vtolerant,andthereforeshouldonlybeusedin3.3Vsystems.Ifyouneedtousethisina5Vsystem,checkoutourtutorialon
usinglogiclevelconverters.

12/13/2016 Si4703FMRadioReceiverHookupGuidelearn.sparkfun.com
https://learn.sparkfun.com/tutorials/si4703fmradioreceiverhookupguide?_ga=1.107488962.1700868332.1447681481 2/4
Undersideofbreakoutboardshowingpinlabels
Forcommunication,thebreakoutboardprovidesaccesstoSDIOandSCLKforI Ccommunication.TheRSTpinisalsobrokenoutforeaseofresettingthemodule.
SENisalsobrokenout,andenablestheusertochangethemodeoffunctionalityoftheIC.SENispulledhighonthebreakoutboardtoenableI Ccommunicationas
mentionedpreviously.However,bychangingthestateofSENalongwithSDIO,youcanchangethemodeoffunctionalitybetweena3wireinterfaceand2wireinterface.
Finally,thelasttwopinsbrokenoutaretheGPIO1andGPIO2pins.Thesecanbeusedasgeneralinput/outputpins,butalsocanbeusedforthingsliketheRDSready,
seekingortuningfunctions.
Theboarddoesnothaveabuiltinantennaonit.However,byusingheadphonesora3footlong3.5mmaudiocable,thewireswillfunctionasanantennaandwill
thereforenegatetheneedforanexternalantennaontheboard.Ifyouarenotplanningonusingeitherofthese,youwillneedtomodifytheboardtoaddinanantenna.
HookingUptoanArduino
First,youwillneedtoprepareboththeSi4703boardandtheArduinoProMini.Solderonthemaleheaderstobothboards.YouwillneedheadersonboththeFTDI
header,aswellasthepinsthatyouwillbeconnectingtotheSi4703.
PinConnections
Onceyouhaveheaderssoldered,youwillneedtousethejumperwirestoconnectbetweentheSi4703andtheProMin.Remember,weareusinga3.3VProMinito
preventdamagetothelogicontheSi4703.
Si4703→3.3VProMini
GND→GND
3.3V→VCC
SDIO→A4
SCLK→A5
RST→D2
YouwillthenalsoneedtohookuptheProMinitotheFTDIboard,andconnecttoyourcomputeroverUSB.
InstallingtheLibrary
Nowthatthehardwareishookedupandconnected,it’stimetopreparetouploadcode.FirstyouneedtoinstalltheArduinolibraryintotheIDE.Ifyouareunawarehowto
dothis,pleasecheckoutourtutorialhere.Youcandownloadthecodehere.
Oncethelibraryisproperlyinstalled,pleaseopenuptheexamplesketchlabeled“Si4703_Radio_Test”.Makesureyouselectthe“ArduinoProorProMini(3.3V,8MHz)w/
ATMega328”underthe“Tools>Boards”heading.SelecttheproperCOMportforyourFTDIdeviceunder“Tools>SerialPort”.Uploadthesketchtotheboard.
Onceyouhaveituploaded,openupyourSerialterminal(eitherthroughtheArduinoIDEoryourfavoriteterminalprogram).Opentheconnectionwiththesettings
9600bps,8,N,1,andyoushouldseethefollowingdisplayedontheterminal.
Youcanthenchoosefromanyoftheoptionslisted.Ifyouinitiallysendtheboardoption“a”,youshouldseethefollowingdisplayedback.
2
2

12/13/2016 Si4703FMRadioReceiverHookupGuidelearn.sparkfun.com
https://learn.sparkfun.com/tutorials/si4703fmradioreceiverhookupguide?_ga=1.107488962.1700868332.1447681481 3/4
Thesefavoritestationsarepredeterminedinthesketch,sofeelfreetochangethosetoyourownfavoritestationsifyouwouldlike.
elseif(ch=='a')
{
channel=930;//RockFM
radio.setChannel(channel);
displayInfo();
}
elseif(ch=='b')
{
channel=974;//BBCR4
radio.setChannel(channel);
displayInfo();
}
Keepinmindyouwillneedtouploadthecodetotheboardagaintoupdatetothenewstations.Youcanthendirectthetuningeitherupordown,andcontrolthevolume
oftheboard.Forexample,totunetostation95.7FMhereinBoulder,Isentthecommands:u,u,+,+,+,+,+,+,+,+,+,+,+,+,+,u,u,u,u,u,u.Thisresultsinthe
followingintheserialterminal.
Forthisexample,Iamusingmyheadphonewireastheanntena.Becauseofthis,IwasnotnecessarilyabletoreceivestationsthatIoftencanwhenI’mnotusinga
headphonewireasanantennawhileconnectedtomycomputer(EMIissomuchfun!).Playaroundwithmovingaroundorusingdifferentheadphonewiresandseehow
radioreceptioncanchange.
ResourcesandGoingFurther
GoingFurther
NowthatyouhaveyourFMTunerupandtunedtoyourfavoritestations,youcanstarttweakingyourcircuit.Youcouldaddinasensortotuneyourboardforyou,orhave
itsetuponatimerwithaclock.Ifyoucomeupwithareallycoolprojectormod,letusknow!We’dlovetohearaboutit.
AdditionalResources
Ifyouhaveanyfeedback,pleasevisitthecommentsorcontactourtechnicalsupportteamatTechSupport@sparkfun.com.
Checkouttheseadditionalresourcesformoreinformationandotherprojectideas.
Si4703Datasheet
TPA6111A2Datasheet
AN230ProgrammingGuide
AN243ProgrammingGuide
GitHubRepositorywithuptodatecodeandboardfiles

12/13/2016 Si4703FMRadioReceiverHookupGuidelearn.sparkfun.com
https://learn.sparkfun.com/tutorials/si4703fmradioreceiverhookupguide?_ga=1.107488962.1700868332.1447681481 4/4
Table of contents
Other sparkfun Receiver manuals