espruino / espruino/Espruino

Modify NFC to work with SDK 15.3

Open
#1,663 4 comments 0 reactions 0 assignees View on GitHub
nRF5x
Dominant language
C
Stars
3k
Forks
770
Avg merge
20h 55m
Merged PRs (30d)
12

Description

As usual, Nordic have completely refactored part of their SDK. While we can patch 15.2, 15.3 lacks the old 'hal_nfc_*' functions.

It doesn't look too bad to modify though. Andreas says:

Looking at targets/nrf5x/bluetooth.c we just need to rewire the calls from the
old api to the new one

- hal_nfc_setup -> nrfx_nfct_init
- hal_nfc_start -> nrfx_nfct_enable
- hal_nfc_parameter_set -> nrfx_nfct_parameter_set
- hal_nfc_parameter_get -> nrfx_nfct_nfcid1_default_bytes_get
- hal_nfc_send -> nrfx_nfct_tx
- hal_nfc_send_rsp -> nrfx_nfct_tx (assiming frame size is in bits)
- hal_nfc_stop -> nrfx_nfct_disable
- hal_nfc_done -> nrfx_nfct_uninit (not sure if this one is needed)

Contributor guide

Open the contributing guide

Research direction

Start in targets/nrf5x/bluetooth.c and compare the listed hal_nfc_* calls with their nrfx_nfct equivalents in Nordic SDK 15.3. Check whether the frame size for nrfx_nfct_tx is in bits and whether nrfx_nfct_uninit is needed. Done means NFC builds and operates with SDK 15.3 using the replacement API.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.