mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-02-23 23:55:15 +08:00
doc for pm3 256k
This commit is contained in:
parent
2cc5fb383c
commit
b2bc2a499d
1 changed files with 43 additions and 3 deletions
|
@ -32,9 +32,7 @@ make SKIPBT=1
|
|||
By default, the firmware is of course tuned for the Proxmark3 Rdv4.0 device, which has built-in support for 256kb onboard flash SPI memory, Sim module (smart card support), FPC connector.
|
||||
These features make it very different from all other devices, there is non other like this one.
|
||||
|
||||
**Recommendation**: if you don't have a RDV4, we strongly recommend your device to have at least a 512kb arm chip, since this repo is on the very edge of 256kb limit.
|
||||
|
||||
A firmware built for the RDV4 can still run on the other platforms as it will auto-detect during boot that external SPI and Sim are not present, still it will boot faster if it's tuned to the platform, which solves USB enumeration issues on some OSes.
|
||||
**Recommendation**: if you don't have a RDV4, we strongly recommend your device to have at least a 512kb arm chip, since this repo is crossing 256kb limit. There is still a way to skip parts to make it fit on a 256kb device, see below.
|
||||
|
||||
If you need to tune things and save the configuration, create a file `Makefile.platform` in the root directory of the repository, see `Makefile.platform.sample`.
|
||||
For an up-to-date exhaustive list of options, you can run `make PLATFORM=`.
|
||||
|
@ -101,6 +99,48 @@ Here are the supported values you can assign to `STANDALONE` in `Makefile.platfo
|
|||
|
||||
By default `STANDALONE=HF_MSDSAL`.
|
||||
|
||||
## 256kb versions
|
||||
|
||||
If you own a Proxmark3 Easy with only 256kb, you can use a few definitions to help you getting a smaller firmware.
|
||||
|
||||
First thing is of course to use the `PLATFORM=PM3OTHER`.
|
||||
Adding `PLATFORM_SIZE=256` will provoke an error during compilation of the recovery image if your image is too big, so you can detect the problem before trying to flash the Proxmark3, e.g.
|
||||
```
|
||||
[=] GEN proxmark3_recovery.bin
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
ERROR: Firmware image too large for your platform! 262768 > 262144
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
```
|
||||
|
||||
You can skip the standalone support by indicating `STANDALONE=` and
|
||||
a series of `SKIP_*` allow to skip some of the functionalities and to get a smaller image.
|
||||
|
||||
| Definitions | Rough estimation of the saved space |
|
||||
|---------------------|-------------------------------------|
|
||||
|STANDALONE= | 3.6kb
|
||||
|SKIP_LF=1 | 25.8kb
|
||||
|SKIP_HITAG=1 | 24.2kb
|
||||
|SKIP_EM4x50=1 | 2.9kb
|
||||
|SKIP_ISO15693=1 | 3.2kb
|
||||
|SKIP_LEGICRF=1 | 3.9kb
|
||||
|SKIP_ISO14443b=1 | 3.7kb
|
||||
|SKIP_ISO14443a=1 | 63.0kb
|
||||
|SKIP_ICLASS=1 | 10.5kb
|
||||
|SKIP_FELICA=1 | 4.0kb
|
||||
|SKIP_NFCBARCODE=1 | 1.4kb
|
||||
|SKIP_HFSNIFF=1 | 0.5kb
|
||||
|SKIP_HFPLOT=1 | 0.3kb
|
||||
|
||||
So for example, at the time of writing, this is a valid `Makefile.platform` compiling an image for 256k:
|
||||
```
|
||||
PLATFORM=PM3OTHER
|
||||
PLATFORM_SIZE=256
|
||||
STANDALONE=
|
||||
SKIP_LEGICRF=1
|
||||
SKIP_FELICA=1
|
||||
```
|
||||
Situation might change when the firmware is growing of course, requiring to skip more elements.
|
||||
|
||||
## Next step
|
||||
|
||||
See [Compilation instructions](/doc/md/Use_of_Proxmark/0_Compilation-Instructions.md)
|
||||
|
|
Loading…
Reference in a new issue