paparazzi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] USB bootloader


From: Scott Morken
Subject: Re: [Paparazzi-devel] USB bootloader
Date: Sat, 17 May 2008 20:04:52 -0700
User-agent: Thunderbird 2.0.0.14 (Windows/20080421)

address@hidden wrote:
Hi Scott,

I loaded the ram image of the bootloader on with lpc21isp over a
serial
port, and then installed a libusb driver for the bootloader.  I then
ran
the USB bootloader host program.

not sure if lpc21isp is capable of loading/running the RAM version,
maybe try the ROM version. The RAM version is to be loaded with
lpc21iap. You do not have to give a serial number.

I got some errors and now I cant get windows to recognize the ram
bootloader anymore.  It always says "unknown device".

Where does this "unknown device" appear? This error

    C:\winarm\utils\lpc21isp_beta_src\Debug>"C:\data\source
code\LPCBootlo
    aderHost\debug\LPCBootloader.exe" "C:\data\source
code\LPCBootloaderFi
    rmware\bl.elf" "GENERIC 112244556677"
    .
    Found USB device
    BootROM code: 2.12
    Part ID: 0x0402FF25 (LPC2148, 512k Flash, 32k+8k RAM)
    BootLoader version: 1.3
    changing vector table
    #ISP error (10:COMPARE_ERROR)
    compare MEM failed at 0x00000000 base 0x40004000 size 0x00001000

shows that it detected the USB device? Maybe you can send the full chain
of commands you gave. Did you compile with the provided makefile with
windows?

Martin





_______________________________________________
Paparazzi-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/paparazzi-devel

Hi

So one procedure for putting on the bootloader (windows) is:
-use the serial bootloader (lpc21isp) and put on the rom version.
-the computer now detects a "libusb\bootloader" device. Install the libusb driver for it. -now use lpc21iap to put on the bl_ram.elf, then use lpc21iap to put on bl.elf in that order, restart the chip with the boot pin high I did this and now I can use the bootloader to load on my own applications correct?

I changed the boot pin from vbus to another with a jumper (0.13) so I can run my own USB app code after bootloading.

I have tried to put on the example lpcusb applications with lpc21iap so far. I changed them like this so they would start at flash address 0x4000:
in the Makefile I added -n to the linker parameters,
in the linker script file "lpc2148-rom.ld" I changed the following

   MEMORY
   {
flash : ORIGIN = *0x00004000, LENGTH = 496K* /* FLASH ROM * changed from 0x00000000, Length 512K* */ ram_isp_low(A) : ORIGIN = 0x40000120, LENGTH = 223 /* variables used by Philips ISP bootloader */ ram : ORIGIN = 0x40000200, LENGTH = 32513 /*
   free RAM area                            */
ram_isp_high(A) : ORIGIN = 0x40007FE0, LENGTH = 32 /* variables used by Philips ISP bootloader */ ram_usb_dma : ORIGIN = 0x7FD00000, LENGTH = 8192 /* on-chip USB DMA RAM area (not used) */
   }

   and

   SECTIONS
   {
       . = 0x00004000;                                /* set location
   counter to address zero, changed from *0x00000000* */
       ...
   }


Without these modifications and with the serial bootloader the 4 lpcusb demo applications work ok. When I try to bootload the demo apps with the above modifications I get this:

   C:\data\source code\LPCBootloaderHost\debug>LPCBootloader.exe "C:\data
   \lpcUSB\trunk\target\examples\hid.elf"
   .
   Found USB device
   BootROM code: 2.12
   Part ID: 0x0402FF25 (LPC2148, 512k Flash, 32k+8k RAM)
   BootLoader version: 1.3
   #
   Starting software at 0x00004000

   C:\data\source code\LPCBootloaderHost\debug>

I cant tell if this means it successfully wrote the elf file or not?

When I plug in the USB device it windows detects it as "USB device not recognized" which seems to indicate the code isn't working properly.


Scott




reply via email to

[Prev in Thread] Current Thread [Next in Thread]