Upgrading your Proxmark3 to V2.3.0

September 21, 2016

These instructions describe the process of upgrading your Proxmark3 firmware to V2.3.0 on Linux, Windows, and macOS.

Download and unpack the V2.3.0 distribution.

For information regarding changes made to the Proxmark3 firmware please take a look at the Changelog on Github

Linux

1. Connect your Proxmark3 to your computer. Run "dmesg | grep ttyACM" to determine which port the Proxmark3 is on. Going forward replace ttyACM0 with your port.

dmesg | grep ttyACM
[  157.597236] cdc_acm 2-2.2:1.0: ttyACM0: USB ACM device

2. Navigate to the V2.3 Ubuntu client folder in the unpacked distribution. 

3. While in the client folder flash the bootrom file with the command below.

sudo ./flasher /dev/ttyACM0 -b ../bootrom/obj/bootrom.elf

The output should look similar to the following:

Loading ELF file '../bootrom/obj/bootrom.elf'...
Loading usable ELF segments:
0: V 0x00100000 P 0x00100000 (0x00000200->0x00000200) [R X] @0x94
1: V 0x00200000 P 0x00100200 (0x00000b30->0x00000b30) [RWX] @0x298

Waiting for Proxmark to appear on /dev/ttyACM0. Found.
Entering bootloader...
(Press and release the button only to abort)
Waiting for Proxmark to reappear on /dev/ttyACM0...... Found.

Flashing...
Writing segments for file: ../bootrom/obj/bootrom.elf
 0x00100000..0x001001ff [0x200 / 1 blocks]. OK
 0x00100200..0x00100d2f [0xb30 / 6 blocks]...... OK

Resetting hardware...
All done.

Have a nice day!

4. Flash the fullimage file with the command below.

sudo ./flasher /dev/ttyACM0 -b ../armsrc/obj/fullimage.elf

The output should look similar to the following:

Loading ELF file '../armsrc/obj/fullimage.elf'...
Loading usable ELF segments:
0: V 0x00102000 P 0x00102000 (0x00029448->0x00029448) [R X] @0x94
1: V 0x00200000 P 0x0012b448 (0x00001954->0x00001954) [RW ] @0x294dc
Note: Extending previous segment from 0x29448 to 0x2ad9c bytes

Waiting for Proxmark to appear on /dev/ttyACM0. Found.
Entering bootloader...
(Press and release the button only to abort)
Waiting for Proxmark to reappear on /dev/ttyACM0...... Found.

Flashing...
Writing segments for file: ../armsrc/obj/fullimage.elf
 0x00102000..0x0012cd9b [0x2ad9c / 343 blocks]....... OK

Resetting hardware...
All done.

Have a nice day!

5. Your proxmark3 should now be updated to V2.3.

6. Unplug and replug the Proxmark3 back in. Test your Proxmark3 by trying to connect to client. 

sudo ./proxmark3 /dev/ttyACM0

Verify that your Proxmark3 is now running version 2.3 using the "hw ver" command.

proxmark3> hw ver
Prox/RFID mark3 RFID instrument          
bootrom: master/v2.3 2016-09-19 20:28:38
os: master/v2.3 2016-09-19 20:28:38
LF FPGA image built for 2s30vq100 on 2015/03/06 at 07:38:04
HF FPGA image built for 2s30vq100 on 2015/11/ 2 at  9: 8: 8
          
uC: AT91SAM7S512 Rev B          
Embedded Processor: ARM7TDMI          
Nonvolatile Program Memory Size: 512K bytes. Used: 183707 bytes (35%). Free: 340581 bytes (65%).          
Second Nonvolatile Program Memory Size: None          
Internal SRAM Size: 64K bytes          
Architecture Identifier: AT91SAM7Sxx Series          
Nonvolatile Program Memory Type: Embedded Flash Memory

Windows

1. Connect your Proxmark3 to your computer. Navigate to your device manager and then to the Ports drop down menu. Under there if your driver is properly installed you should see a device named Proxmark3 COM#. Going forward replace your COM# with the one in the examples.

2. Navigate to the Windows client folder in the unpacked distribution. 

3. While in the client folder flash the bootrom file with the command below.

flasher COM3 -b ../bootrom/obj/bootrom.elf

The output should look similar to the following:

Loading ELF file '../bootrom/obj/bootrom.elf'...
Loading usable ELF segments:
0: V 0x00100000 P 0x00100000 (0x00000200->0x00000200) [R X] @0x94
1: V 0x00200000 P 0x00100200 (0x00000b30->0x00000b30) [RWX] @0x298

Waiting for Proxmark to appear on COM3. Found.
Entering bootloader...
(Press and release the button only to abort)
Waiting for Proxmark to reappear on COM3...... Found.

Flashing...
Writing segments for file: ../bootrom/obj/bootrom.elf
 0x00100000..0x001001ff [0x200 / 1 blocks]. OK
 0x00100200..0x00100d2f [0xb30 / 6 blocks]...... OK

Resetting hardware...
All done.

Have a nice day!

4. Flash the fullimage file with the command below.

flasher COM3 -b ../armsrc/obj/fullimage.elf

The output should look similar to the following:

Loading ELF file '../armsrc/obj/fullimage.elf'...
Loading usable ELF segments:
0: V 0x00102000 P 0x00102000 (0x00029448->0x00029448) [R X] @0x94
1: V 0x00200000 P 0x0012b448 (0x00001954->0x00001954) [RW ] @0x294dc
Note: Extending previous segment from 0x29448 to 0x2ad9c bytes

Waiting for Proxmark to appear on COM3. Found.
Entering bootloader...
(Press and release the button only to abort)
Waiting for Proxmark to reappear on COM3...... Found.

Flashing...
Writing segments for file: ../armsrc/obj/fullimage.elf
 0x00102000..0x0012cd9b [0x2ad9c / 343 blocks]....... OK

Resetting hardware...
All done.

Have a nice day!

5. Reconnect the Proxmark3. Your proxmark3 should now be updated to V2.3.

6. Verify that your Proxmark3 is now running version 2.3 using the "hw ver" command.

proxmark3 COM3

Verify that your Proxmark3 is now running version 2.3 using the "hw ver" command.

proxmark3> hw ver
Prox/RFID mark3 RFID instrument          
bootrom: master/v2.3 2016-09-19 20:28:38
os: master/v2.3 2016-09-19 20:28:38
LF FPGA image built for 2s30vq100 on 2015/03/06 at 07:38:04
HF FPGA image built for 2s30vq100 on 2015/11/ 2 at  9: 8: 8
          
uC: AT91SAM7S512 Rev B          
Embedded Processor: ARM7TDMI          
Nonvolatile Program Memory Size: 512K bytes. Used: 183707 bytes (35%). Free: 340581 bytes (65%).          
Second Nonvolatile Program Memory Size: None          
Internal SRAM Size: 64K bytes          
Architecture Identifier: AT91SAM7Sxx Series          
Nonvolatile Program Memory Type: Embedded Flash Memory

Mac OS X

1. Connect your Proxmark3 to your computer. Run "ls /dev/cu*" to determine which port the Proxmark3 is on. Going forward, replace cu.usbmodem# with your port.

ls /dev/cu*
/dev/cu.usbmodem411

2. Navigate to the Mac client folder in the unpacked distribution. 

3. While in the client folder flash the bootrom file with the command below.

sudo ./flasher /dev/cu.usbmodem411 -b ../bootrom/obj/bootrom.elf

The output should look similar to the following:

Loading ELF file '../bootrom/obj/bootrom.elf'...
Loading usable ELF segments:
0: V 0x00100000 P 0x00100000 (0x00000200->0x00000200) [R X] @0x94
1: V 0x00200000 P 0x00100200 (0x00000b30->0x00000b30) [RWX] @0x298

Waiting for Proxmark to appear on /dev/cu.usbmodem411. Found.
Entering bootloader...
(Press and release the button only to abort)
Waiting for Proxmark to reappear on /dev/cu.usbmodem411...... Found.

Flashing...
Writing segments for file: ../bootrom/obj/bootrom.elf
 0x00100000..0x001001ff [0x200 / 1 blocks]. OK
 0x00100200..0x00100d2f [0xb30 / 6 blocks]...... OK

Resetting hardware...
All done.

Have a nice day!

4. Flash the fullimage file with the command below.

sudo ./flasher /dev/cu.usbmodem411 -b ../armsrc/obj/fullimage.elf

The output should look similar to the following:

Loading ELF file '../armsrc/obj/fullimage.elf'...
Loading usable ELF segments:
0: V 0x00102000 P 0x00102000 (0x00029448->0x00029448) [R X] @0x94
1: V 0x00200000 P 0x0012b448 (0x00001954->0x00001954) [RW ] @0x294dc
Note: Extending previous segment from 0x29448 to 0x2ad9c bytes

Waiting for Proxmark to appear on /dev/cu.usbmodem411. Found.
Entering bootloader...
(Press and release the button only to abort)
Waiting for Proxmark to reappear on /dev/cu.usbmodem411...... Found.

Flashing...
Writing segments for file: ../armsrc/obj/fullimage.elf
 0x00102000..0x0012cd9b [0x2ad9c / 343 blocks]....... OK

Resetting hardware...
All done.

Have a nice day!

5. Your proxmark3 should now be updated to V2.3.

6. Verify that your Proxmark3 is now running version 2.3 using the "hw ver" command.

sudo ./proxmark3 /dev/cu.usbmodem411
proxmark3> hw ver
Prox/RFID mark3 RFID instrument          
bootrom: master/v2.3 2016-09-19 20:28:38
os: master/v2.3 2016-09-19 20:28:38
LF FPGA image built for 2s30vq100 on 2015/03/06 at 07:38:04
HF FPGA image built for 2s30vq100 on 2015/11/ 2 at  9: 8: 8
          
uC: AT91SAM7S512 Rev B          
Embedded Processor: ARM7TDMI          
Nonvolatile Program Memory Size: 512K bytes. Used: 183707 bytes (35%). Free: 340581 bytes (65%).          
Second Nonvolatile Program Memory Size: None          
Internal SRAM Size: 64K bytes          
Architecture Identifier: AT91SAM7Sxx Series          
Nonvolatile Program Memory Type: Embedded Flash Memory





Also in Blog

Getting Started with MagSpoof R3 firmware on macOS
Getting Started with MagSpoof R3 firmware on macOS

April 25, 2017

Follow this step by step guide to get started using the MagSpoof R3 firmware on macOS.

View full article →

MagSpoof R3 on GitHub
MagSpoof R3 on GitHub

April 25, 2017

Hardware and software sources for the MagSpoof R3 are now available at https://github.com/RyscCorp/magspoof_r3.

 

 

View full article →

Getting Started with MagSpoof using Arduino IDE
Getting Started with MagSpoof using Arduino IDE

March 27, 2017

This guide covers the process of getting started with the MagSpoof using Arduino IDE.

View full article →