15 lines
1015 B
Markdown
15 lines
1015 B
Markdown
# nfc-writer
|
|
|
|
Small local web page that programs NFC tags through a PC/SC reader (tested with the ACS ACR1252U-M1).
|
|
Type a URL or some text, put a tag on the reader, press **Program**.
|
|
|
|
```
|
|
cargo run --release # http://127.0.0.1:7252 (port: NFC_PORT)
|
|
```
|
|
|
|
- Browsers can't talk to a USB smart-card reader, so a small Rust server (axum + `pcsc`, Windows `winscard`) does the reader access; the page polls `/api/status` and posts to `/api/program`.
|
|
- Supported tags: NFC Forum Type 2: NTAG213/215/216, MIFARE Ultralight / EV1 / C. MIFARE Classic and DESFire are detected and refused.
|
|
- Input starting with `http(s)://`, `www.`, `tel:`, `mailto:`, `sms:`, `geo:` or any `scheme://` is written as an NDEF URI record (`www.` gets `https://` in front); anything else as an NDEF text record (`en`).
|
|
- The write empties the NDEF TLV first and writes its header last, so an interrupted write leaves an empty tag rather than a corrupt one. After writing, the data is read back and compared.
|
|
- Bound to 127.0.0.1 only.
|