Skip to content
New issue

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

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

Already on GitHub? Sign in 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: あく <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants