Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

NFC: Add NDEF Parser for MFUL, MFC and SLIX #3973

Merged
merged 7 commits into from
Oct 31, 2024

Conversation

Willy-JL
Copy link
Contributor

@Willy-JL Willy-JL commented Oct 26, 2024

What's new

  • NFC parser for NDEF structured data (backport from CFW, followup from Add NDEF plugin #3923, and with many additions and improvements)
  • Supports:
    • Mifare Ultralight (including NTAG2xx and NTAG I2C)
    • Mifare Classic (1k tested, mini should work the same, 4k not tested as i couldn't find examples but should work and MAD2 is parsed too)
    • SLIX (all types should be supported)
    • Generic ISO15693 could be supported too, but i could not find any specification or examples, so only SLIX is currently supported but can easily be adapted to any other ISO15693
  • Parses:
    • URI (including Phone and Mail links) records
    • Text records
    • BT MAC address records
    • Contacts
    • WiFi credential records
    • Empty records
    • SmartPoster records
    • Unknown records are dumped without parsing
  • Due to structure of supported_cards plugins, this needs to produce multiple plugins for the different card types
  • Also means only code needed for this card is loaded when parsing, so it is a little less RAM heavy than having single plugin

Screenshot-20241026-021026
Screenshot-20241026-021153
Screenshot-20241026-021317
Screenshot-20241026-021118

Verification

  • Read different types of supported NFC tags that contain NDEF records of different types
  • In particular, would be good to check mifare mini and mifare classic 4k as i could not find examples to test, all other card types and record i have tested myself

Checklist (For Reviewer)

  • PR has description of feature/bug or link to Confluence/Jira task
  • Description contains actions to verify feature/bugfix
  • I've built this code, uploaded it to the device and verified feature/bugfix

skotopes
skotopes previously approved these changes Oct 31, 2024
@skotopes
Copy link
Member

skotopes commented Oct 31, 2024

@Willy-JL this one is really good: we've been talking about ndef support for a very long time ) Really cool that you've made it first

@skotopes skotopes merged commit 1907f23 into flipperdevices:dev Oct 31, 2024
11 checks passed
RogueMaster pushed a commit to RogueMaster/flipperzero-firmware-wPlugins that referenced this pull request Nov 2, 2024
* NFC: Add NDEF Parser for MFUL, MFC and SLIX
* Fix inefficiency in MAD checking
* NFC: NDEF parser less RAM waste for contact vcards
* Fix typo
* Make PVS Happy
* NFC: hide TODO in 3rd party plugin

Co-authored-by: あく <alleteam@gmail.com>
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants