2019-07-13 03:16:51 +08:00
# Installing on Windows
There are two ways to install, build and use Proxmark3 on Windows:
* Using Gator96100 **ProxSpace** , a package to assist in your Windows installation of MinGW
* Using native **WSL** , if you're running a Windows 10 version recent enough (FCU 1709 or later)
2019-04-08 06:38:00 +08:00
---
2019-07-13 03:16:51 +08:00
# Installing on Windows with ProxSpace
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
## Video Installation guide
[![Windows Installation tutorial ](https://github.com/5w0rdfish/Proxmark3-RDV4-ParrotOS/blob/master/screenshot-www.youtube.com-2019.03.17-20-44-33.png )](https://youtu.be/zzF0NCMJnYU "Windows Installation Tutorial")
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
## Driver Installation
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
Install required drivers for your Windows installation. You may need admin privileges to do this.
Step by step guides are online such as [RiscCorps ](https://store.ryscc.com/blogs/news/how-to-install-a-proxmark3-driver-on-windows-10 ).
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
## Download / clone ProxSpace repo
2019-04-08 06:38:00 +08:00
2019-08-30 01:06:11 +08:00
Download the Gator96100 ProxSpace package from https://github.com/Gator96100/ProxSpace/releases
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
If you prefer, you can clone it, provided that you installed Github for Windows https://desktop.github.com/.
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
Extract 'ProxSpace' to a location path without spaces.
2019-04-08 06:38:00 +08:00
For example D:\OneDrive\Documents\GitHub is ok whereas C:\My Documents\My Projects\proxspace is not.
2019-07-13 03:16:51 +08:00
If you're running Windows in a Virtualbox guest, make sure not to install ProxSpace on a vbox shared drive. (It's ok later to move the `/pm3` subfolder to a shared drive and edit the `*.bat` )
## Launch ProxSpace
Run `runme.bat` or `runme64.bat` depending on your Windows architecture.
You'll get a Bash prompt and your home directory should become the ProxSpace `pm3` sub-directory.
Please note you will need to use `/` in paths as you are using Bash.
## Clone the RRG/Iceman repository
2019-04-08 06:38:00 +08:00
```sh
2019-07-13 03:16:51 +08:00
cd
2019-04-08 06:38:00 +08:00
git clone https://github.com/RfidResearchGroup/proxmark3.git
2019-07-13 03:16:51 +08:00
cd proxmark3
2019-04-08 06:38:00 +08:00
```
2019-05-06 01:53:58 +08:00
2019-07-13 06:36:10 +08:00
If you're a contributing developer, you probably want to be able to use `make style` . If so, you've to install astyle:
```sh
pacman -S mingw-w64-x86_64-astyle
```
2019-07-13 03:16:51 +08:00
## Compile and use the project
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
Now you're ready to follow the [compilation instructions ](/doc/md/Use_of_Proxmark/0_Compilation-Instructions.md ).
2019-04-08 06:38:00 +08:00
2019-09-09 07:07:46 +08:00
To use the compiled client and flasher, the only differences are that executables end with `.exe` (e.g. `proxmark3.exe` ) and that the Proxmark3 port is one of your `comX` ports where "X" is the com port number assigned to proxmark3 under Windows.
2019-04-08 06:38:00 +08:00
2019-09-04 04:54:42 +08:00
To flash: In principle, the helper script `pm3-flash-all` should auto-detect your COM port, so you can just try:
2019-07-13 03:16:51 +08:00
```sh
2019-09-04 04:54:42 +08:00
pm3-flash-all
2019-07-13 03:16:51 +08:00
```
If COM port detection failed, you'll have to call the flasher manually and specify the correct port:
2019-09-04 04:54:42 +08:00
```sh
2019-09-09 07:54:59 +08:00
proxmark3 comX --flash --unlock-bootloader --image /usr/local/share/proxmark3/firmware/bootrom.elf --image /usr/local/share/proxmark3/firmware/fullimage.elf
2019-09-04 04:54:42 +08:00
```
or from the local repo
2019-07-13 03:16:51 +08:00
```sh
2019-09-09 07:54:59 +08:00
client/proxmark3 comX --flash --unlock-bootloader --image bootrom/obj/bootrom.elf --image armsrc/obj/fullimage.elf
2019-07-13 03:16:51 +08:00
```
Similarly, to run the client, you may try:
```sh
2019-09-04 04:54:42 +08:00
pm3
2019-07-13 03:16:51 +08:00
```
Or, by specifying the COM port manually:
```sh
2019-09-04 04:54:42 +08:00
proxmark3.exe comX
2019-07-13 03:16:51 +08:00
```
# Installing on Windows with WSL
It requires to run a Windows 10 version 1709 or above. Previous versions didn't have support for COM ports.
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
Install WSL with e.g. the standard Ubuntu.
2019-04-08 06:38:00 +08:00
2019-07-13 03:16:51 +08:00
For WSL configuration, see [Manage and configure Windows Subsystem for Linux ](https://docs.microsoft.com/en-us/windows/wsl/wsl-config ).
## X Server Installation
2019-07-13 06:36:10 +08:00
If you want to run the graphical components of the Proxmark3 client, you need to install a X Server such as [VcXsrv ](https://sourceforge.net/projects/vcxsrv/ ) or [Xming ](https://sourceforge.net/projects/xming/ ) and launch it, e.g. by executing XLaunch.
2019-07-13 03:16:51 +08:00
## Dependencies
Enter WSL prompt (`wsl`) and from there, follow the [Linux Installation Instructions ](/doc/md/Installation_Instructions/Linux-Installation-Instructions.md ) for Ubuntu, summarized here below:
```sh
sudo apt-get update
2019-09-02 04:51:08 +08:00
sudo apt-get install --no-install-recommends git ca-certificates build-essential pkg-config \
libreadline-dev gcc-arm-none-eabi libnewlib-dev qtbase5-dev
2019-07-13 03:16:51 +08:00
```
2019-09-02 04:51:08 +08:00
If you don't need the graphical components of the Proxmark3 client, you can skip the installation of `qtbase5-dev` .
2019-07-13 03:16:51 +08:00
## Clone the RRG/Iceman repository
```sh
git clone https://github.com/RfidResearchGroup/proxmark3.git
```
## Compile and use the project
2019-04-08 06:38:00 +08:00
2019-05-06 01:53:58 +08:00
Now you're ready to follow the [compilation instructions ](/doc/md/Use_of_Proxmark/0_Compilation-Instructions.md ).
2019-07-13 03:16:51 +08:00
To use the compiled client and flasher, the only difference is that the Proxmark3 port is translated from your `comX` port where "X" is the com port number assigned to proxmark3 under Windows, to a `/dev/ttySX` .
2019-05-06 01:53:58 +08:00
2019-07-13 06:06:19 +08:00
Depending on the Windows version, you might need to give permission to the current user to access `/dev/ttySX` : (change X to your port number)
2019-04-08 06:38:00 +08:00
```sh
2019-07-13 06:06:19 +08:00
ls -al /dev/ttySX
groups|grep dialout
2019-07-13 03:16:51 +08:00
```
2019-07-13 06:06:19 +08:00
If group ownership is `dialout` and your user is member of `dialout` group, all is fine. Else you'll have to provide access to `/dev/ttySX` : (Unfortunately the access rights of the port won't survive and will have to be fixed again next time.)
```sh
sudo chmod 666 /dev/ttySX
```
2019-07-13 03:16:51 +08:00
If you installed a X Server and compiled the Proxmark3 with QT4 support, you've to export the `DISPLAY` environment variable:
```sh
export DISPLAY=:0
```
and add it to your Bash profile for the next times:
```sh
echo "export DISPLAY=:0" >> ~/.bashrc
```
2019-09-04 04:54:42 +08:00
To flash: In principle, the helper script `pm3-flash-all` should auto-detect your COMX==/dev/ttySX port, so you can just try:
2019-07-13 06:06:19 +08:00
```sh
2019-09-04 04:54:42 +08:00
pm3-flash-all
2019-07-13 06:06:19 +08:00
```
If port detection failed, you'll have to call the flasher manually and specify the correct port:
2019-07-13 03:16:51 +08:00
```sh
2019-09-09 07:54:59 +08:00
proxmark3 /dev/ttySX --flash --unlock-bootloader --image /usr/local/share/proxmark3/firmware/bootrom.elf --image /usr/local/share/proxmark3/firmware/fullimage.elf
2019-09-04 04:54:42 +08:00
```
or from the local repo
```sh
2019-09-09 07:54:59 +08:00
client/proxmark3 /dev/ttySX --flash --unlock-bootloader --image bootrom/obj/bootrom.elf --image armsrc/obj/fullimage.elf
2019-04-08 06:38:00 +08:00
```
2019-07-13 06:06:19 +08:00
Similarly, to run the client, you may try:
```sh
2019-09-04 04:54:42 +08:00
pm3
2019-07-13 06:06:19 +08:00
```
Or, by specifying the COM port manually:
2019-04-08 06:38:00 +08:00
```sh
2019-09-04 04:54:42 +08:00
proxmark3 /dev/ttySX
2019-04-08 06:38:00 +08:00
```
2019-07-13 06:06:19 +08:00
2019-07-14 23:58:47 +08:00
Note that it may take a quite long time for a freshly plugged Proxmark3 to be visible on a WSL /dev/ttySX port.