Upgrading your Proxmark3 to V3.0.1
These instructions describe the process of upgrading your Proxmark3 firmware to V3.0.1 on Linux, Windows, and macOS.
Download and unpack the V3.0.1 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 V3.0.1 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 V3.0.1.
6. Disconnect and reconnect the Proxmark3 USB cable and launch the client.
Verify that your Proxmark3 is now running version 3.0.1 by connecting to the client.
sudo ./proxmark3 /dev/ttyACM0
Prox/RFID mark3 RFID instrument bootrom: master-rysc/v3.0.1 2017-09-21 19:05:39 os: master-rysc/v3.0.1 2017-09-21 19:05:45 LF FPGA image built for 2s30vq100 on 2015/03/06 at 07:38:04 HF FPGA image built for 2s30vq100 on 2017/05/17 at 17:48:26 uC: AT91SAM7S512 Rev B Embedded Processor: ARM7TDMI Nonvolatile Program Memory Size: 512K bytes. Used: 192390 bytes (37). Free: 331898 bytes (63). 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. 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. Open up a command prompt window and navigate to the location of your Proxmark3 folder.
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. Disconnect and reconnect the Proxmark3. Your proxmark3 should now be updated to V3.0.1.
6. Verify that your Proxmark3 is now running version 3.0.1 by connecting to the client.
proxmark3 COM3
The output should look similar to the following:
Prox/RFID mark3 RFID instrument bootrom: master-rysc/v3.0.1 2017-09-21 19:05:39 os: master-rysc/v3.0.1 2017-09-21 19:05:45 LF FPGA image built for 2s30vq100 on 2015/03/06 at 07:38:04 HF FPGA image built for 2s30vq100 on 2017/05/17 at 17:48:26 uC: AT91SAM7S512 Rev B Embedded Processor: ARM7TDMI Nonvolatile Program Memory Size: 512K bytes. Used: 192390 bytes (37). Free: 331898 bytes (63). Second Nonvolatile Program Memory Size: None Internal SRAM Size: 64K bytes Architecture Identifier: AT91SAM7Sxx Series Nonvolatile Program Memory Type: Embedded Flash Memory
macOS
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.usbmodem1421
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.usbmodem1421 -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 (0x00000cc8->0x00000cc8) [R X] @0x298 Waiting for Proxmark to appear on /dev/cu.usbmodem1421. Found. Entering bootloader... (Press and release the button only to abort) Waiting for Proxmark to reappear on /dev/cu.usbmodem1421... Found. Flashing... Writing segments for file: ../bootrom/obj/bootrom.elf 0x00100000..0x001001ff [0x200 / 1 blocks]. OK 0x00100200..0x00100ec7 [0xcc8 / 7 blocks]....... OK Resetting hardware... All done. Have a nice day!
4. Flash the fullimage file with the command below.
sudo ./flasher /dev/cu.usbmodem1421 -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 (0x0002b730->0x0002b730) [R X] @0x94 1: V 0x00200000 P 0x0012d730 (0x00001a28->0x00001a28) [RW ] @0x2b7c4 Note: Extending previous segment from 0x2b730 to 0x2d158 bytes Waiting for Proxmark to appear on /dev/cu.usbmodem1421. Found. Entering bootloader... (Press and release the button only to abort) Waiting for Proxmark to reappear on /dev/cu.usbmodem1421... Found. Flashing... Writing segments for file: ../armsrc/obj/fullimage.elf 0x00102000..0x0012f157 [0x2d158 / 361 blocks]......................................................................................................................................................................................................................................................................................................................................................................... OK Resetting hardware... All done. Have a nice day!
5. Your Proxmark3 should now be updated to V3.0.1.
6. Verify that your Proxmark3 is now running version 3.0.1.
sudo ./proxmark3 /dev/cu.usbmodem1421
Prox/RFID mark3 RFID instrument bootrom: master-rysc/v3.0.1 2017-09-21 16:36:44 os: master-rysc/v3.0.1 2017-09-21 16:36:45 LF FPGA image built for 2s30vq100 on 2015/03/06 at 07:38:04 HF FPGA image built for 2s30vq100 on 2017/05/17 at 17:48:26 uC: AT91SAM7S512 Rev B Embedded Processor: ARM7TDMI Nonvolatile Program Memory Size: 512K bytes. Used: 192856 bytes (37). Free: 331432 bytes (63). 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

Proxmark Pro - Sniffing a Mifare Desfire 4K Tag

ProxmarkPro - Sniffing a Mifare 4K Tag
