Proxmark3 community

Research, development and trades concerning the powerful Proxmark3 device.

Remember; sharing is caring. Bring something back to the community.


"Learn the tools of the trade the hard way." +Fravia

You are not logged in.

Announcement

Time changes and with it the technology
Proxmark3 @ discord

Users of this forum, please be aware that information stored on this site is not private.

#1 2010-01-30 16:36:50

elecone
Member
Registered: 2010-01-30
Posts: 2

[SOLVED] - Flashing the PM3 in Linux for the First Time

hey guys, i just received my proxmark3 and I'm having some problems reflashing it in Linux.

I figured it would be best to upgrade it to the latest SVN version (316) since the version shipped seems somewhat older (20090713 as per the website), so using the instructions on the wiki, i downloaded the latest version and then ran tools/install-gnuarm4.sh. Everything seemed to install properly, i set the ARMLIB and PATH variables and begin compiling. The original compile completed fine. When i when to use flasher to flash the boot loader (client/flasher bootrom bootrom/obj/bootrom.s19). I didn't get anything that appeared to be a clear positive acknowledgement that the flash completed successfully:

Waiting for Proxmark to appear on USB... Found.
Entering flash-mode...
(Press and hold down button NOW if your bootloader requires it)
Waiting for Proxmark to reappear on USB... Found.
Flashing bootrom from bootrom/obj/bootrom.s19
Warning: Your bootloader does not understand the new START_FLASH command
         It is recommended that you update your bootloader

I executed the reflash command again on the assumption that the warning would disappear if the bootloader was updated.. well fail.. next i noticed a comment on the bottom of the compiling page on the wiki, it said that i'll also need to set the LIBGCC variable and that flasher only uses the elf version of the the bootloader. I set the variable (export LIBGCC=/home/YOURUSERNAME/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a)  tried to compile and got this error:

arm-elf-ld: ERROR: /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_udivsi3.o) uses hardware FP, whereas obj/fullimage.elf uses software FP
arm-elf-ld: failed to merge target specific data of file /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_udivsi3.o)
arm-elf-ld: ERROR: /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_divsi3.o) uses hardware FP, whereas obj/fullimage.elf uses software FP
arm-elf-ld: failed to merge target specific data of file /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_divsi3.o)
arm-elf-ld: ERROR: /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_umodsi3.o) uses hardware FP, whereas obj/fullimage.elf uses software FP
arm-elf-ld: failed to merge target specific data of file /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_umodsi3.o)
arm-elf-ld: ERROR: /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_modsi3.o) uses hardware FP, whereas obj/fullimage.elf uses software FP
arm-elf-ld: failed to merge target specific data of file /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_modsi3.o)
arm-elf-ld: ERROR: /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_dvmd_tls.o) uses hardware FP, whereas obj/fullimage.elf uses software FP
arm-elf-ld: failed to merge target specific data of file /home/user/gnuarm/lib/gcc/arm-elf/4.3.3/interwork/libgcc.a(_dvmd_tls.o)
make[1]: *** [obj/fullimage.elf] Error 1
make[1]: Leaving directory `/home/user/tools/proxmark3-read-only/armsrc'
make: *** [armsrc/all] Error 2

so.. i then rationalised that the newer version had some sort of issues with upgrading from older versions and that i should use the version from the google code page (pm3-20090905-r216).. so just for good measure i removed all the previous stuff and started from scratch however at this point, I can't even compile! after the install-gnuarm4.sh i set variables and try to compile everything and get the following error:

arm-elf-ld -g -Tldscript-flash --oformat elf32-littlearm -Map=obj/bootrom.map -o obj/bootrom.elf obj/version.o obj/ram-reset.o obj/flash-reset.o obj/fromflash.o obj/usb.o obj/bootrom.o
arm-elf-ld: ERROR: obj/ram-reset.o uses hardware FP, whereas obj/bootrom.elf uses software FP
arm-elf-ld: failed to merge target specific data of file obj/ram-reset.o
arm-elf-ld: ERROR: obj/flash-reset.o uses hardware FP, whereas obj/bootrom.elf uses software FP
arm-elf-ld: failed to merge target specific data of file obj/flash-reset.o
arm-elf-ld: ERROR: obj/fromflash.o uses hardware FP, whereas obj/bootrom.elf uses software FP
arm-elf-ld: failed to merge target specific data of file obj/fromflash.o
arm-elf-ld: ERROR: obj/usb.o uses hardware FP, whereas obj/bootrom.elf uses software FP
arm-elf-ld: failed to merge target specific data of file obj/usb.o
arm-elf-ld: ERROR: obj/bootrom.o uses hardware FP, whereas obj/bootrom.elf uses software FP
arm-elf-ld: failed to merge target specific data of file obj/bootrom.o
make[1]: *** [obj/bootrom.elf] Error 1
make[1]: Leaving directory `/home/user/tools/pm3-20090905-r216/bootrom'
make: *** [all] Error 2


SO.. can anyone help?

Last edited by elecone (2010-01-30 22:47:49)

Offline

#2 2010-01-30 22:47:08

elecone
Member
Registered: 2010-01-30
Posts: 2

Re: [SOLVED] - Flashing the PM3 in Linux for the First Time

ok, so i ended up just using the flasher from the svn version (316) with the bootrom file from the stable version (pm3-20090905-r216).. once i reflashed, i stopped getting the START_FLASH warning. then i just used the samge flasher with svn316 os and fpga elfs.

all that said, the real problem i had (besides the compile issues) is that:
1. i didnt realise the bootrom came precompiled.
2. the precompilied flasher that came with pm3-20090905-r216 didnt work

Offline

Board footer

Powered by FluxBB