[hpsdr] Programming Hermes Help

Phil Harman phil at pharman.org
Sun Dec 2 17:36:19 PST 2012


Hi Jeremy,

"When the FPGA boots, it checks the position of the jumper to see from
what address in the flash it should start loading.  If the jumper is on,
it loads from the beginning.  If it's off, it starts from 0x10000."

Not quite. When the FPGA boots is always loads the bootloader from address
0x00000.

Once the bootloader code is running in the FPGA is reads the state of the
jumper. If inserted it remains in bootloader mode. If removed it resets
the FPGA and instructs it to load from EEPROM address 0x10000.

73 Phil...VK6APH


> ***** High Performance Software Defined Radio Discussion List *****
>
> On Dec 2, 2012, at 4:47 PM, Tim O'Rourke <w4yn at earthlink.net> wrote:
>
>> Tnx Jeremy
>> My fault, no geek on this end, just a user.
>> The confusion stemmed from all the chatter about missing boot loader
>> install.
>> I did learn a lot today, I may have some confusion left over.
>> I thought you could reprogram bootloader and firmware from byte blaster
>> interface.
>> After reading a bit it seems the bootloader gets programmed via byte
>> blaster but the firmware needs a different interface, P1 on Hermes.
>> Files for Bootloader and firmware have different extensions so that
>> should have been a clue for me.
>> All is good to go now and I understand a bit more on FPGA programming,
>> will forget most when 66 year old brain sleeps on it!
>
> The ByteBlaster interface can be used to program your board.  It's the
> only way that can reprogram the bootloader.
>
> Essentially, the flash holds a large image that is two images glued
> together.  The first image is the bootloader, which is kinda a misnomer.
> It's really a "recovery image" so that if things get screwy, you can
> recover your board without using a ByteBlaster to do so.  It's designed to
> be very simple and small so that it's easy to debug and extremely
> reliable.
>
> The second image is the "main image" of the board.  This is the one that
> you use normally.  It starts at a specific address in the large image.
> When the FPGA boots, it checks the position of the jumper to see from what
> address in the flash it should start loading.  If the jumper is on, it
> loads from the beginning.  If it's off, it starts from 0x10000.
>
> There is a pitfall here, and one should pay attention if they ever want to
> use a USB Blaster to reload their firmware.  HPSDRProgrammer and the
> various HPSDR factory images know that they're supposed to rewrite the
> flash starting at 0x10000 ignoring the bootloader which is in the low part
> of the flash.  This means that it will always make sure the booloader does
> the right thing.  If you use a USB Blaster, it's not aware of this setup.
> If you merely program the same image you use with HPSDRProgrammer, you
> will overwrite your bootloader.  The box will boot up and start, but it
> will not have the booloader functionality.  You must create a combined
> image of the bootloader and the application image to use with a USB
> Blaster.
>
> So, if you have any desire to use a USB Blaster to reprogram your board,
> see:
>
> http://svn.tapr.org/filedetails.php?repname=OpenHPSDR+Main&path=%2Ftrunk%2FMetis%2FDocumentation%2FArchive%2FMetis-+How+it+works_V1.27.pdf
>
> in Appendix A.
>
> Also notice that when it comes to network protocols, flash programming and
> a great number of other things, Hermes is a Metis.  They are equivalent
> functionality.  So, if you're wondering about some of the things like
> this, looking at the Metis documentation can help immensely.  Please don't
> forget that Hermes wasn't born out of the Ether, it was based on
> Metis/PennyLane/Mercury, and one should look to those projects for clues
> as well.
>
> Please also don't get the idea that I'm blaming anyone.  I unfortunately
> write e-mails like this in a fairly straight forward fashion and it
> usually comes off more harshly than I intend.  I mainly want to get this
> information out clearly on the mailing list so that people who search will
> find clear explanations.
>
>> Tnx for all your work.
>> Tim
>
> --
> Jeremy McDermond (NH6Z)
> Xenotropic Systems
> mcdermj at xenotropic.com
>
>
>
> _______________________________________________
> HPSDR Discussion List
> To post msg: hpsdr at openhpsdr.org
> Subscription help:
> http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org
> HPSDR web page: http://openhpsdr.org
> Archives: http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/
>
>



 1354498579.0


More information about the Hpsdr mailing list