Sie sind auf Seite 1von 11

Updating

the FUNcube Dongle Firmware


Document date: Contributors: Editor: 2 June 2011 Howard Long, G6LVB, FCD #1 Rob Styles, M0TFO, FCD #15 Steve Belter, N9IP, FCD #408

TheFUNcubeDongle(FCD)isasmallSoftwareDefinedReceiver(SDR)withabuiltinsoundcardthat wascreatedtoprovidealowcostwayforschoolsandindividualstolistentotheFUNcubesatelliteand receivetelemetryfromtheonboardexperiments.TheFCDconnectstoanantennaandtheUSBportof alaptopordesktoppersonalcomputer(PC)todisplaytelemetryandmessagesinaninterestingway. Seewww.funcubedongle.comformoreinformationontheFCD.

Asshipped,theFCDsmicrocontrollerisprogrammedwithVersion18boftheFCDfirmware.This versionofthesoftwareisverystableandfacilitatestherapidfunctionaltestingoftheFCDduringthe manufacturingprocess.Unfortunately,mostSDRsoftwarethatworkswiththeFCDrequiresamoreup todateversion,typicallyVersion18forlater. TheFCDfirmwareupgradeprocessisrelativelyeasyandmostpeoplesucceedwiththeupgradeontheir firsttry. ThisdocumentisintendedtohelpFUNcubedongleownersupgradetheirFCDfirmwareusingaPC runningtheWindowsoperatingsystem,specificallyXP,Vista,orWindows7.Itisaimedatindividuals withasolidbackgroundinbothradioelectronics(e.g.,amateurradiooperators)andpersonalcomputer software.

Step 1: Join the FUNcube Yahoo! Group


TheUserGuidesandmostofthesoftwarefortheFCDareintheFilessectionoftheFUNcubeYahoo! group.Ifyouhaventalreadydoneso,jointheFUNcubeYahoo!groupat: http://uk.groups.yahoo.com/group/funcube/

Using HDSDR with the FUNcube Dongle

Page 1

Step 2: Copy Files to Your PC


GototheFilessectionoftheFUNcubeYahoo!group,andthenselecttheFirmwarefortheFCDfolder. DownloadthenewestPackage*.zipfileinthisdirectory.Atthetimethatthisisbeingwritten,the currentfileisPackage18f.zip.This.zipfilecontainsthefourfilesrequiredtoupgradethefirmware, includingthefirmwareimagefile,export18f.bin. OnyourPC,putthe.zipfilesomewhereeasytofindliketheDownloadsfolderoronyourDesktop. Ifthereisanewerexport*.binfile,youcandownloadittoo.Useitinsteadoftheexport18f.binfile whenyoufollowtheremainingstepsinthisprocedure.

Step 3: Extract the Files Needed for the Upgrade


UseWindowsExplorertocreateadirectoryonyourPCtoholdtheFCDfrontendprograms,theFCD bootloader,andtheFCDfirmware.ThesuggestedlocationisC:\ProgramFiles\FCD. NotethatyoulllikelyneedAdministratorprivilegestoinstallthesoftwareandtorunit.Evenwith Administratorprivileges,youmaybeaskedmultipletimesifitisOKtoinstallprogramsorcopyfilesto yourcomputer.Finally,youllneedAdministratorprivilegestoruntheprograms. Extractthethree.exefilesandthe.binfilefromthe.zipfileandputthemintheFCDdirectorythatyou justcreated. UsingWindowsExplorer,checktheFCDdirectoryonyourPC.Youshouldhavefourfiles: export18f.bin(orthecurrent.binfile) FCHid.exe FCHid003.exe FCHIDBL.exe Ifyoudonthavethesefourfiles,revisitSteps2and3tosolvetheproblembeforeyoucontinue.Ifyou haveallfourfiles,youmaydeletethe.zipfilethatyoudownloaded. MicrosoftclassifiesasoundcardasaHumanInterfaceDeviceorHID.ThenameoftheFCHid.exe programisanacronymforFunCubeHumanInterfaceDevice. Tohelpyouwiththesubsequentsteps,hereisabriefdescriptionofthefourfiles: export18f.binFCDfirmwareimagethatwillbeusedbythebootloader FCHid.exethefullyfunctionalfrontendprogramthatyoullusetotesttheFCDandmayusewith someapplicationstosetthecenterfrequencyoftheFCD.ThisprogramrequiresthattheFCD haveversion18fofthefirmwarealreadyinstalledontheFCD;itdoesntworkwithversion18b. FCHid003.exeolderversionofFCHid.exethatwillworkwithversion18bofthefirmware,theversion thatisonyourFCDwhenyoufirstreceivedit. FCHIDBL.exethebootloaderprogramthatwillwritea.binfileintotheEEPROMofyourFCD.

Using HDSDR with the FUNcube Dongle

Page 2

Step 4: Verify the Basic Operation of the FCD


ConnecttheFCDtoaUSBportonyourcomputer.Youdontneedanantennatoupgradethefirmware, soyoucanleavetheSMAconnectordisconnected. Windowsmayormaynottellyouthatithasfoundnewhardware.Regardless,theFCDlookslikea genericsoundcardtotheoperatingsystem,soyouwontneedtoinstallanewdriver. SinceyourFCDwasdeliveredwithversion18bofthefirmware,youmustusetheolderversionofthe fullyfunctionalfrontendprogram. StarttheFCHid003.exeprogram(notFCHid.exe)bydoubleclickingonthefileintheFCDdirectory.You shouldseesomethinglikethis:

Lookcarefullyatthetextboxintheupperrightportionofthewindow:

IfthesecondandfourthlinesreadSuccess,FCDfound.andSuccess,FCDreadregister,value:0, yourPCandtheFCDarecommunicating. Ifyougetdifferentmessages,likeError,FCDnotfound:isFCDcorrectlyinstalled?orError,FCDread command.,checktheTroubleshootingsectionbelowforsuggestedsolutions.

Using HDSDR with the FUNcube Dongle

Page 3

Step 5: Place the FCD in Boot Loader Mode


TheFCDcanbeinoneoftwomodes:ApplicationModeorBootLoaderMode. ApplicationModeisthenormaloperatingmode;wheneveryouapplypower,itwillbeinApplication Mode. BootLoaderModeisusedtoupdatethefirmwareoftheFCD.YoullusetheFullyFunctionalFront Endprogram(FCHid003.exe)toswitchfromApplicationModetoBootLoaderMode. UsethemousetoclicktheResettobootloaderbuttonintheupperrightportionoftheFUNcube DongleFrequencyControlwindow.Thetextboxintheupperrightportionofthewindowshouldnow looklikethis:

ChecktobesurethelastlinereadsSuccess,FCDresettobootloader. NowusethemousetoclicktheExitbuttonintheupperrightportionofthewindowtoleavethe FullyFunctionalFrontEndprogram(FCHid003.exe).

Step 6: Upgrade the Firmware


StarttheFCHIDBL.exeprogram(theBLstandsforBootLoader)bydoubleclickingonthefileinthe FCDdirectory.Youshouldseesomethinglikethis:

Theimportantmessageisthefifthlineintheabovescreenshot:FCDinbootloadermode.

Using HDSDR with the FUNcube Dongle

Page 4

NowclickontheOpenfilebuttonintheupperrightcornerofthescreen.NavigatetotheFCD directoryandchoosethefirmwareimagefileexport18f.bin:

ClicktheOpenbutton.

Using HDSDR with the FUNcube Dongle

Page 5

TheFUNcubeDongleBootloaderwillreadthe.binfirmwareimage,displayingthefollowingmessage log:

Youarestillontrackifyouseethesemessages:Fileopened,Fileread,andFCDinbootloader mode.TheWindowsBootloaderapplicationhassuccessfullyreadthefirmwareimageandverifiedthe checksumofthefile.However,thefirmwarehasnotyetbeencopiedtotheFCDEEPROM. ClicktheWritefirmwarebutton.Thecompleteprocessofwritingthefirmwareandverifyingthe imageintheEEPROMtakes1215seconds.Dontpanic;thereisa35secondpauseafterthefirmware iswrittenbeforeyouseethemessageFirmwareverified:

ThefirmwareinyourFCDhasbeenupgraded,butdontexittheFCHIDBL.exeprogramyet.

Using HDSDR with the FUNcube Dongle

Page 6

Step 7: Return the FCD to Application Mode


ClicktheResettoappbutton.Thewindowshouldnowlooksomethinglikethis:

Again,dontpanic;theErrormessageatthebottomofthemessagelogisnormal.Therearetwo errorshere. First,thespellingofrecognizedisunusual.Theselectionofsvs.zmaybeaQueensEnglishvs. AmericanEnglishpreference,buttheextraiisunexpected.[Thisisaweakattemptathumorto breakupanotherwisedeadlydulltechnicaldocumentthatiswaytoolongtodescribeamostlysimple process.] Second,themessagereallyisntanerror.YouveswitchedtheFCDfromBootLoaderModeto ApplicationMode.TheFCHIDBL.exeBootLoaderprogramdoesntunderstandApplicationMode,soitis justwhiningtoletyouknowthattheFCDisntinBootLoaderMode. WhatisimportantisthelineinthemessagelogabovetheErrormessage: Querymessage:FCDAPP18.06. ThismessagemeansthattheFCDisnowrunningversion18.06(actually18f)oftheFCDfirmware,the letterfbeingthesixthletteroftheEnglishalphabet: 18.04=18d 18.05=18e 18.06=18f 18.07=18g 18.08=18h andsoon. EarlyversionsoftheFCDfirmware(18band18c)dontidentifytheirversionnumber. Finally,clicktheExitbuttontoterminatetheFCHIDBL.exeBootLoaderprogram.

Using HDSDR with the FUNcube Dongle

Page 7

Step 8: Run the new FullyFunctional FrontEnd


RuntheFullyFunctionalFrontEndagain,butthistimerunthenewerversion.StarttheFCHid.exe program(notFCHid003.exe)bydoubleclickingonthefileintheFCDdirectory.Youshouldsee somethinglikethis:

Thereareanumberofthingstonoteandcheckonthisscreen: 1. ThetitleofthewindowisFUNcubeDongleFrequencyControlV2.0.Ifyoustartedthewrong FrontEnd(FCHid003.exeinsteadofFCHid.exe)theV2.0wouldbemissing. 2. ThesecondandfourthlinesofthemessagelogreadSuccess,FCDfound.andSuccess,FCD readregister,value:0.FCHidandyourFCDarecommunicating. 3. BoxeshavebeenaddedforDCcorrections.Thisfunctionalitywasntavailableinfirmware version18bortheearlierFCHid003.exe. 4. ClicktheDefaultsbuttonalongtherightsideofthebottomedgeofthewindowtoload goodvaluesintoallofthetuneradjustments. 5. Youcansetthecenterfrequency(sometimescalledtheLOorLocalOscillator)oftheFCDby typinganumberbetween52000and2100000intotheblackboxintheupperleftcornerofthe window.OnceyouveenteredanewLO,clicktheSetfrequencybuttonorpressEnteron thekeyboard. SomeSDRprograms,forexampleSpectraVue,willprocesstheI/QdatastreamfromtheFCD,butdont knowhowtochangetheLO.WiththeseSDRprograms,youcanchangetheLOusingFCHid.exe;youll runboththeSDRprogramandFCHidatthesametime.YoucanalsocalibratetheLOfrequencyand minimizethecenterspikeusingtheadjustmentsavailabletoyouonthiswindow. OtherSDRprograms,forexampleHDSDR,cancontroltheLOandsometimesotherparametersofthe FCD.InthecaseofHDSDR,thisoperationalinterfaceisprovidedbytheExtIO_FCD_G0MJW.dll.These programsdonotuseFCHid.exeforfrequencycontrol,calibration,andotheradjustments.

Using HDSDR with the FUNcube Dongle

Page 8

Troubleshooting
HereisalistofsomeoftheproblemsthatmayoccurwhenupgradingtheFCDfirmware. Problem:TheFCHid.exeortheFCHid003.exeprogramreportsError,FCDnotfound:isFCDcorrectly installed? Solution:MakesuretheFCDispluggedintoyourcomputer.TryusingadifferentUSBport. Problem:TheFCHid003.exeprogramreportsSuccess,FCDfound.butthenError,FCDread command." Solution:TheFCDmaybeinBootLoaderMode.RuntheFCHIDBL.exeprogram.IfitreportsDonglein bootloadermode,thisisgoodnews.Ifyouhaventupgradedthefirmwareyet,proceedwith Step6:UpgradetheFirmware.Ifyouvealreadyupgradedthefirmware,gotoStep7: ReturntheFCDtoApplicationMode;notethatinStep7youwillrunFCHid.exe,not FCHid003.exe. IftheFCDisntinBootLoaderMode,tryunpluggingthenreconnectingtheFCDtotheUSBport. Problem:TheFCHid.exeprogramreportsSuccess,FCDfound.butthenError,FCDreadcommand." Solution:Ifyouhaventupgradedthefirmwarefromversion18bto18f,youneedtouseFCHid003.exe insteadofFCHid.exe.TheFCHid.exeprogramtriestoreadparametersfromtheFCDthatare notsupportedbythefirmwareversion18b. Ifyouhaveupgradedthefirmwareto18f,theFCDmaystillbeinBootLoaderMode.Runthe FCHIDBL.exeprogramandgotoStep7:ReturntheFCDtoApplicationMode. Problem:TheFCHIDBL.exeprogramreportsError:notinrecoginisedFCDmodebeforeyouve upgradedthefirmware. Solution:TheFCDisntinBootLoaderMode.RunFCHid003.exeandgotoStep5:PlacetheFCDin BootLoaderMode. Problem:TheFCHIDBL.exeprogramreportsError:notinrecoginisedFCDmodeafteryouveupgraded thefirmware. Solution:Thisisnormal.ExitFCHIDBL.exeandgotoStep8:RunthenewFullyFunctionalFrontEnd. Problem:WhenrunninganSDRprogramwiththeFCD,IseeorhearMorseCodeevenwithoutan antenna. Solution:IftheFCDisinBootLoaderMode,theI/QdatafromtheFCDincludesanA1carriersending BOOTLOADERin24WPMCW. Ifyouarestillexperiencingproblemsthatarenotsolvedbythelistabove,checkthemessagearchiveon theFUNcubeYahoo!grouptoseeifsomeoneelsehasexperiencedyourproblem.Ifyoudontseeyour

Using HDSDR with the FUNcube Dongle

Page 9

problemandasolutioninthearchive,sendamessagetotheFUNcubeYahoo!group.Chancesaregood thatoneormoreofthe1000+membersofthegroupcanhelpyou.

FCD Firmware FAQ


HereareafewFrequentlyAskedQuestionsabouttheFCDfirmware. Question:WhyistheFCDshippedwitholdorobsoletefirmware? Answer:Version18boftheFCDfirmwareisverystableandfacilitatestherapidfunctionaltestingofthe FCDduringthemanufacturingprocess.Alwaysshippingthesamefirmwareversionalso facilitatesprovidinginstructionstonewownersandprovidingassistanceontheFUNcube Yahoo!groupmaillist. Question:WhythreeprogramstoupgradetheFCDfirmware? Answer:Theanswerisrootedinthestructureofthefirmwareandthetwomodesofoperation: ApplicationModeandBootLoaderMode. ToprovideflexibilitytotheApplicationModesoftware,theBootLoaderdoesntknowanything abouttheoperationoftheApplication.ItassumestheFCDwillbeinBootLoaderModewhen theBootLoaderprogramisstarted,whichmeansanApplicationprogramisneededtoputthe FCDintoBootLoadermode. Theearlyversionofthefirmware(18b)didntsupportmanyoftheadjustments(e.g.,DCoffsets, etc.),sotheearlyfrontendapplicationprogram(FCHid003.exe)isusedwiththe18bfirmware andamorerecentfrontendapplication(FCHid.exe)isusedtoprovidegreaterfunctionalitywith morerecentversionsofthefirmware(18fandlater).UsingthemorerecentFCHid.exewiththe old18bfirmwaregeneratesError,FCDreadcommand.becausethe18bfirmwaredoesnt supportanumberoftheparametersthatthenewsoftwareexpects. Question:Canthefirmwarebedowngradedorrolledbacktoanearlierversion? Answer:Yes.UsetheFCDIDBL.exeBootLoaderprogramtowriteadifferent.binfirmwareimagetothe FCD.NotethatyoullneedtousetherightversionofFCHid.exetoputtheFCDintoBootLoader ModebasedonthefirmwarethatiscurrentlyontheFCD:FCHid.exeforversion18forlater, FCHid003.exeforversion18bthrough18e. Question:Whereisthesourcecodeforthesoftware? Answer:ThesourcecodeforFCHid.exeandFCHIDBL.execanbefoundintheFilessectionofthe FUNcubeYahoo!groupinthefolderFCDfrontend&bootloader.ThefileFCHID006.zip containsthesourcecodeforFCHid.exe;FCHIDBL001.ziphasthesourceforFCHIDBL.exe. Unfortunatelythesourceisnotavailableforthefirmware.Thefirmwaresourcereveals proprietaryinformationaboutthetunerICwhichiscoveredbyanondisclosureagreementwith themanufacturer,whichwassignedbytheFCDdesigner. Using HDSDR with the FUNcube Dongle Page 10

Contacts
Correctionsandadditionstothisdocumentarewelcome.SendthemtoSteveatn9ip@amsat.org. Ifyouneedassistance,thefastestwaytogethelpistocheckthemessagesontheFUNcubeYahoo! group: http://uk.groups.yahoo.com/group/funcube/ Allofthecommonproblemsandmanyobscureissueshavebeendiscussedandsolvedalready.Ifyour problemisntsolvedbyoneoftheexistingmessagethreads,sendaninquirytothegroup.Youlllikely getoneormorerepliesfromthe1000+membersofthegroup. Emailrequestinghelpsenttooneofthecontributorsortheeditorofthisdocumentisunlikelytobe answeredinatimelyfashion,ifatall.Itisntthatwedontcare,butourpersonalschedulesand responsibilitiestypicallywontallowustorespondoneonone,andanysolutionisbestsharedwiththe group. IfyouareinterestedindevelopingsoftwarefortheFCD,jointheFUNcubeDevelopmentYahoo!group: http://uk.groups.yahoo.com/group/fcdevelopment/ TheFUNcubeDevelopmentgroupistheappropriateforumfordiscussinginterfaces,findingsource code,dealingwithMakefiles,findinglibraries,andsharingcodeforbetatesting.

Using HDSDR with the FUNcube Dongle

Page 11

Das könnte Ihnen auch gefallen