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

Provide NFC Library #5703

Open
erwango opened this issue Jan 17, 2018 · 28 comments
Open

Provide NFC Library #5703

erwango opened this issue Jan 17, 2018 · 28 comments
Labels
area: NFC Near-Field Communication Feature Request A request for a new feature

Comments

@erwango
Copy link
Member

erwango commented Jan 17, 2018

NFC is a important part of IoT ecosystem and now part of some basic use cases that should be supported by Zephyr.
It is also available on some boards and ICs supported by Zephyr.
A NFC library ported onto Zephyr would allow to extend Zephyr offer and provide more complete use cases.

First priority would be NFC Tag functionality would be sufficient. NFC reader capability would be a lesser prio considering targeted use case by Zephyr devices.

First step of the study would be to establish requested services level (from basic memory write to full NDEF support).

@erwango erwango added Feature Request A request for a new feature RFC Request For Comments: want input from the community labels Jan 17, 2018
@nashif nashif added the area: NFC Near-Field Communication label Jan 19, 2018
@nashif nashif mentioned this issue Feb 7, 2018
@rodrigopex
Copy link
Contributor

rodrigopex commented Jul 5, 2018

Guys, any progress on that? We will need NFC for a project. I am available to help on that if you can support me (information and help) on creating it. The first I will focus initially on the driver for nRF52832 device.

@rodrigopex
Copy link
Contributor

@nashif any progress on that? Can I start to work to create the API/Driver?

@nullr0ute
Copy link
Contributor

@rodrigopex I would suggest just get going on it if you have the cycles

@rodrigopex
Copy link
Contributor

rodrigopex commented Aug 7, 2018 via email

@nullr0ute
Copy link
Contributor

If you have the time to work on it (the cycles) I'd probably just do so, maybe check on IRC

@grochu
Copy link
Contributor

grochu commented Aug 28, 2018

Guys, any progress on that? We will need NFC for a project. I am available to help on that if you can support me (information and help) on creating it. The first I will focus initially on the driver for nRF52832 device.

We are working on adding an NFC driver supporting nRF52832 and nRF52840 chips to the NRFX driver package (and consequently to Zephyr). The timeline is around end of September - beginning of October.

@rodrigopex
Copy link
Contributor

rodrigopex commented Aug 28, 2018 via email

@erwango
Copy link
Member Author

erwango commented Aug 28, 2018

We are working on adding an NFC driver supporting nRF52832 and nRF52840 chips to the NRFX driver package (and consequently to Zephyr).

Might be worth sharing the API once you have something ready. The sooner the API is discussed the better IMHO.

@grochu
Copy link
Contributor

grochu commented Aug 28, 2018

Might be worth sharing the API once you have something ready. The sooner the API is discussed the better IMHO.

Agree, we can start discussing the API once it gets stable, but let me clarify 2 things already:

  1. What we are going to provide in the first step is a HW driver for the nRF52 chips, so roughly it will cover what is supported by the NFC peripheral in these MCUs. We are not attempting to propose a general NFC driver API for Zephyr in this step.
  2. To reveal some details on the driver API, I can say it is rather low-layer and corresponds to chapter 6 of the "NFC Forum Digital Protocol Technical Specification 2.0" (protocol layer equivalent to ISO 14443-3: Initialization and anti-collision).

@aaronhshi
Copy link
Collaborator

@grochu is proposing/developing a general NFC driver API for Zephyr in your guy's plan for the future? This issue is something I'm very interested in and was hoping to develop and be apart of in providing a general NFC driver API for Zephyr!

@grochu
Copy link
Contributor

grochu commented Aug 29, 2018

@aaronhshi yes, we are planning to propose a general NFC API for Zephyr as well. We will come up with an API-only pull request to start the discussion.

@thephasdin
Copy link

thephasdin commented Aug 20, 2019

Any updates regarding the status of NFC support for NRF52 SoCs?

There's a pull-request #10117 which has since last been touched on April the 30th. It's been marked stale since.

@carlescufi carlescufi removed the RFC Request For Comments: want input from the community label Mar 17, 2020
@kdandank
Copy link

kdandank commented Oct 14, 2020

Any update on this?
I also noticed that the nfc_hello sample that existed in 2.3.0 release, has been removed from 2.4.0 release.

@selman-nus
Copy link

Guys, any progress on that? We will need NFC for a project. I am available to help on that if you can support me (information and help) on creating it. The first I will focus initially on the driver for nRF52832 device.

We are working on adding an NFC driver supporting nRF52832 and nRF52840 chips to the NRFX driver package (and consequently to Zephyr). The timeline is around end of September - beginning of October.

@grochu Is there any snippet yet?

@grochu
Copy link
Contributor

grochu commented Feb 5, 2021

There is an NFCT driver in the hal/nordic repo: modules/hal/nordic/nrfx/drivers/src/nrfx_nfct.c which supports nRF52 and nRF53 families (devices which have NFCT). At the moment there are no plans of adding a generic Zephyr NFC driver or upper-layer libraries, but we are open to support such activity.

@adamfowleruk
Copy link

Happy to see the Nordic nRF52 and 53 supported. Wanted to flag that this may be needed by the Herald Project for Digital Contact Tracing wearable checking-in, or out of band pairing for bluetooth smartphone with wearable (if possible... not sure if any SOCs have readers...), or by a number of covid credentials projects. Our project uses nRF52 and 53 chips as our reference hardware platform so with the comment from @grochu I think we are fine for now.

@ck-telecom
Copy link
Contributor

any update for generic NFC library? could we steal from MBed?

@nashif
Copy link
Member

nashif commented Oct 29, 2021

any update for generic NFC library? could we steal from MBed?

you are welcome to submit a PR to support this.

@matt-wood-ct
Copy link

Is anyone working on this, I could really use it

@ghost
Copy link

ghost commented Sep 20, 2023

I'm working on a driver for the NXP CLRC661 and CLRC663 and ISO15693 and NXP slix protocol layers. All of that is still in work or internal review. I'll try to open a PR around mit october.

@pdgendt
Copy link
Collaborator

pdgendt commented Sep 20, 2023

Hi @marcel-ithinx, I've also worked on an NFC proposal (which is far from complete), but maybe can help out for more ideas:
main...pdgendt:zephyr:nfc-subsys

I've added the NXP PN5180 driver and ISO14443A subsystem, and tested both reader mode and HCE (Host Card Emulation).

You (or anyone) can ping me if desired :)

@MarcelKr
Copy link

(switching to proper account, oops)

@pdgendt Uh, that looks great! I didn't implement the NFC driver API abstraction (nfc.h) yet (which you already did). I'm on vacation the next two weeks but after that will have a closer look and probably will try to adapt my stuff to use your nfc.h. Thanks for your response :)

@HesselM
Copy link
Contributor

HesselM commented Oct 17, 2023

Hi all!

Last year I've been working with NFC on both nRF and NXP platforms. Part of our zephyr port to the qn9090 I actually made a NFC (tag) subsystem, supporting the nRF-NFCT drivers and the nth3x-nfc tag (which is internally located within the qn9090 die).

I never bothered making it public, but as part of the qn9090 zephyr 3.4 port, i moved it to public space.
You can find my approach at : https://github.com/Sendrato/zephyr/tree/v3.4-branch-nfc.

EDIT: the specific commit with all NFC stuff is Sendrato@a096544 ]

The approach/interface is largely based on the approach nordic took.
The nordic-drivers are probably outdated as they are from June 2021 or so?

@HesselM
Copy link
Contributor

HesselM commented Oct 19, 2023

Hi all,

An update: I've patches bugs, cleaned the branch/commit and upgraded all nRF drivers.
The proposed NFC subsystem can be checked at https://github.com/Sendrato/zephyr/tree/v3.4-branch-nfc

I've included a sample which should run on every nordic device with NFC and devices using the nt3h2 driver.
A board-configuration-overlay for the dk6_qn9090 and mg100 are included.

Hessel.

@matt-wood-ct
Copy link

This is still interesting, any movement on this?

@HesselM
Copy link
Contributor

HesselM commented Feb 19, 2024

This is still interesting, any movement on this?

Today I tried to fix some comments on the PR I created a while ago (#64142). The approach I took is pretty much a proposal, which does work with the nfc-libs of the Nordic MCUs and a different one. Both are used in projectes we develop.

@ghost
Copy link

ghost commented Aug 13, 2024

This is still interesting, any movement on this?

@matt-wood-ct
Copy link

I do still feel this is essentially a necessary addition, why can't we just adopt Nordics NFC implementation they wrote for supporting the NFC-A peripherals on their chips, I understand the current files have a Nordic license on, are they actually opposed to allowing its use on non Nordic platforms? Is there a wider issue at play?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: NFC Near-Field Communication Feature Request A request for a new feature
Projects
None yet
Development

No branches or pull requests