ProxSpace is a collection of tools that are required to compile the firmware and client of the Proxmark III. At its core ProxSpace uses msys2. MSYS2 is a software distro and building platform for Windows, it provides a bash shell, Autotools, revision control systems and the like for building native Windows applications using MinGW-w64 toolchains. ProxSpace uses the GNU Arm Embedded Toolchain for compiling the Proxmark III firmware.
ProxSpace comes with 2 different executables .bat files.
runme64.bat
will start ProxSpace in x64 mode.autobuild.bat
runs a script (setup/autobuild.sh) in x64 mode at startup. The script will update all git repositories in the pm3 folder and then compile them and move a zip file with the just compiled firmware and client into the build folder. It is not designed for development, just for compiling.
ProxSpace will automatically download and update to the latest required packages. All tools will be contained within the ProxSpace folder.
ProxSpace is based on:
- msys2-x86_64-20210725
Following packages will be automatically download or updated:
- arm-none-eabi-gcc
- arm-none-eabi-gdb
- openocd
- git
- make
- cmake
- gcc
- gdb
- Qt5
- readline
- pkg-config
- libsndfile
- lua
- bzip2
- python
- jansson
MSYS2 features a package management system to provide easy installation of packages, Pacman. It brings many powerful features such as dependency resolution and simple complete system upgrades, as well as straight-forward package building. All installed packages can be updated with pacman -Syuu
For more details visit the MSYS2 wiki
- There are two methods of installing the ProxSpace environment.
- Downloading the latest master. This will upgrade the msys2 core packages and then will download and install every package required for compiling the Proxmark client and firmware. This can take some time.
- Downloading the latest release. This ProxSpace environment is prepared for a fast installation, all packages are already cached.
- Extract 'ProxSpace' to a location on drive without spaces. For example
C:\Proxspace
orD:\projects\public\proxmark\proxspace
are ok, whereasC:\My Documents\My Projects\proxspace
is not. - Run
runme64.bat
depending on your Windows architecture. - Get the Proxmark III repository you wish to compile. This can be done with git. For example
git clone https://github.com/RfidResearchGroup/proxmark3.git
. - Go into the root directory of the repository you wish to compile. For example
cd proxmark3
. - To build the project type
make clean && make all
. - In most cases the Proxmark III needs to be flashed with the just compiled firmware for details see Firmware upgrading the Proxmark III.
- To run the Proxmark III client type
./pm3
. - Check your firmware revision on the Proxmark III with
hw ver
- For basic help type
help
. Or for help on a set of sub commands type the command followed by help. For examplehf mf help
.
Please note that more detail is available on the wiki: https://github.com/RfidResearchGroup/proxmark3/blob/master/doc/md/Use_of_Proxmark/0_Compilation-Instructions.md#flash-the-bootrom--fullimage
- Attach the Proxmark III to a USB port on your computer.
- Flash the bootrom with
./pm3-flash-bootrom
. - Flash the fullimage with
./pm3-flash-fullimage
. - Wait for the process to complete.