This adds automatic cloning of Mifare Ultralight cards to the selected
setting.
Currently, only the DUMP_MFU command existed. In order to clone a Mifare
Ultralight card, the user had to convert the hex output of DUMP_MFU to binary
and upload the result to the card.
The CLONE_MFU command will attempt to read and store the Mifare Ultralight
contents directy to the slot which is then transitioned to emulation mode.
The CLONE_MFU button action does the same, so the board can be configured to
clone cards by simply selecting a slot with one button and cloning with the
other.
the comparatively large write times of the external flash memory.
This is why we are looking for a better solution on this problem in the
next hardware revision.
Having the memory concept of future revisions in mind, we changed the
firmware from it's current memory concept, which is using the external
flash as a direct memory for reading/writing of card (or application)
memory contents to a different one.
With this new version, the memory that is directly accessed by the
application (through MemoryWrite and MemoryRead) now resides within the
local RAM of the microcontroller, thus limiting the maximum card size to
1KB.
However, the flash is still used to store multiple other card dumps,
that are now recalled and stored upon
1) Changing the current setting to another card. This applies also to
using the CYCLE_SETTINGS button action.
2) The newly introduced button actions MEM_RECALL and MEM_STORE
Consider this new concept as a feature, since it is now easily possible
to, for example emulate a payment card and recall the original contents
(stored in flash) upon button press. However, note that the modified
card contents are lost, if they are not written back to flash before
powering the Chameleon off.
For the future we are thinking about using external non-volatile RAM to
store the current card to prevent this from happening. That way, we can
have a very consistent memory concept and are still able to recall or
store the memory from flash.
Note that the previous Firmware version that uses the flash in a direct fashion is still available for those that don't care about the write times and need the full unlimited memory size.