问题标签 [lib-nfc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nfc - NFC 读取器 ACR122U 和 libnfc.driver.acr122_usb 无法写入 USB(结果太大)
我尝试在带有 libnfc 的 Mac OSX Mojave 10.14.6 上使用 ACR122 USB NFC 阅读器,当我尝试使用以下命令时出现“无法写入 USB(结果太大)”错误LIBNFC_LOG_LEVEL=3 nfc-list
:
当我开始进行故障排除时,我遇到了“无法声明 USB 接口”错误,其他人也遇到了这个错误。所以我从这个stackoverflow问题和我发现的这个github问题中尝试了以下事情:
- 使用 --> 安装 libnfc 出现
brew install libnfc
“无法声明...”错误。 - 使用 sudo -> 没有变化
- 禁用 PC/SC 守护进程 -> 没有做任何事情
- 编辑
/usr/libexec/SmartCardServices/drivers/ifd-ccid.bundle/Contents/Info.plist
->没有帮助 - 卸载libnfc,自己编译项目并禁用ifreader。我尝试使用驱动程序 acr122_usb 和 acr122_pcsc 构建它 -> 现在出现“无法写入 USB(结果太大)”错误。
- 编译:
autoreconf -iv && ./configure --with-drivers=acr122_usb && make clean && make && make install
sudo launchctl remove com.apple.ifdreader
sudo launchctl stop com.apple.ifdreader
- 编译:
现在进行故障排除后,我遇到了错误,不知道如何解决问题。阅读器指示灯不再闪烁红色,但由于错误,设备已明确连接到计算机并且可用。
作为一个侧面节点:我通过 USB 集线器连接阅读器,因为阅读器没有 USB C 电缆,但这应该不是问题。有没有人有同样的问题或我可以尝试其他方法?
python - 在 ACR1252U NFC 读卡器上强制 PC/SC 驱动程序并使用 python 进入卡仿真模式
目的:让ACR1252U NFC读卡器在Mac上使用python进入卡模拟模式
我在使用 PC/SC 驱动程序的 macOS Catalina 10.15.3 上使用 ACS ACR1252U 读卡器时遇到问题。我从ACS 网站安装了驱动程序。
通过使用 pyscard ( http://pyscard.sourceforge.net/ ) 库,以下 python 代码工作并在windows计算机上返回正确的输入卡模拟模式响应: 输入卡模拟模式命令和响应格式
但它在 Mac 上给出了错误。我按照这个答案来更改 plist 文件,但我仍然得到同样的错误:
我使用自制软件安装了 libnfc,但我不确定如何根据答案的第二部分来编译它。
任何帮助将不胜感激。
arduino - PN532 V3 + Arduino UNO + libnfc 错误(错误:无法打开 NFC 设备:pn532_uart:/dev/ttyUSB0:115200)
我正在尝试将 PN532 (v3) 板与 Arduino UNO 和 libnfc 一起用于我的大学项目。我偶然发现的一个问题是,当我调用 nfc-list 时,libnfc-1.7.1 给了我以下错误:
我在 Arduino 上使用阅读器没有任何问题,我可以上传草图,阅读器与标签进行交互。阅读器处于 SPI 模式,当我调用 nfc-list 时,LED 会闪烁,因此我唯一能想到的就是 libnfc 的某种问题。
我希望有人可以提供帮助,任何建议都会很棒!:) 谢谢!
连接
文件配置
/etc/nfc/libnfc.conf
uartnfc.info
使用的资源
http://nfc-tools.org/index.php/Libnfc:Arduino - 用于安装 libnfc
https://github.com/gunmetal313/mfocuino - 上传草图uartnfc.ino并导入库(mfocuino/mfocuino-read -only/nfcreader/arduino/libraries/PN532/ ) 进入 Arduino IDE。
我已经尝试解决问题的事情
为什么使用 libnfc 和 PN532 SHIELD PN532“找不到 NFC 设备”
无法打开 NFC 设备
https://github.com/nfc-tools/libnfc/issues/507
https://forums.adafruit.com/viewtopic.php?f =19&t=58188
https://superuser.com/questions/1409108/nfc-unable-to-open-nfc-device
raspberry-pi - RPi 如何读取 I2C/SPI PN532 NFCRFID/NFC 模块?
我有一个 Pi Zero v1.3:
PI-PN532
我认为问题是 BCM5 到 SS?我相信这应该是CE0还是CE1?
我已经关闭了 SEL0 和 SEL1。唯一的另一件事是,我没有使用与“MISO/MOSI/ETC”对应的DI/O 1-6,而是将电线直接插入MISO/MOSI/etc的孔中。
链接到产品。
java - 来自带有 Jewel/Topaz512 NFC 标签的 ACR122U 阅读器的“超时,目标尚未回答”
我正在构建一个 Windows/Java 程序(使用javax.smartcardio
)以使用 ACR122U 设备(内部带有 PN532 NFC 控制器芯片)与 Jewel/Topaz512 标签(来自 Innovision/Broadcom)进行通信。
我实现了 Topaz512 协议(来自此数据表),但我的命令只有一半有效。
- 一些有效的命令:
RID, RALL, READ, WRITE-NE, RSEG
- 一些不起作用的命令:
WRITE-E, READ8, WRITE-E8, WRITE-NE8
使用 WRITE-NO-ERASE 命令的示例
例如,这是我发送 WRITE-NO-ERASE 命令时得到的结果:
命令:FF:00:00:00:0C:D4:40:01:1A:7F:42:38:01:9A:00:17:E8
在哪里:
D4:40:01
是 InDataExchange 命令,1A:7F:42
是 WRITE-NO-ERASE 命令(值:0x42,块 0x0F,字节 7),38:01:9A:00
是 4 字节的标签 UID,17:E8
是CRC。
回复:D5:41:00:42:90:00
这里的回答是正确的:0x42
。状态字节 ( 0x00
) 通知一切顺利。
使用 WRITE-WITH-ERASE 命令的示例
这是我发送 WRITE-WITH-ERASE 命令时得到的结果:
命令:FF:00:00:00:0C:D4:40:01:53:7F:42:38:01:9A:00:28:6E
在哪里:
D4:40:01
是 InDataExchange 命令,53:7F:42
是 WRITE-WITH-ERASE 命令(值:0x42,块 0x0F,字节 7),38:01:9A:00
是 4 字节的标签 UID,28:6E
是CRC。
回复:D5:41:01:90:00
这里,状态字节 ( 0x01
) 通知 PN532 检测到超时。(来自PN532 文档(p67):“超时,目标未回答 - 0x01”)
此外,当我删除 PN532 超时(使用FF:00:00:00:06:D4:32:02:00:00:00
)时,非工作命令不响应D5:41:01:90:00
,但等待更长时间,然后我没有得到响应。
编辑 2020-04-20
我只是尝试使用 gscriptor(来自pcsc-tools套件)执行命令,我得到了相同的行为。这是我的结果:
剧本:
结果:
linux - macOS 10.15.4 - 用于主机卡仿真的 USB 外部 NFC 读取器(CCID 和 PC/SC 兼容)
我有一个无法在 macOS Catalina 10.15.4 上设置的Identiv uTrust 3700 F CL 阅读器。我想阅读 NDEF 标签, 通过 NFC 使用 U2F (FIDO2 CTAP1),并模拟来自我的主机充当安全元件的读卡器(供其他读卡器读取,如 Android 或 iOS 设备)的卡片。
我的读者很opensc-tools
适合列出读者。我怀疑多个进程正在争夺 USB 设备。
libnfc 中的这一部分表明相关设备(SCL3711,它是另一个 Identiv 非接触式 USB 阅读器)可以选择不使用专有驱动程序或完全禁用 PCSC 以与 nfc-tools 一起使用。但是,这对我在 macOS(或 Ubuntu)上不起作用。安装驱动程序后:
卸载驱动程序后:
这个 SO question似乎提供了相同的建议:
...您可以将基于 PC/SC 的 libnfc 驱动程序用于 ACR122U (libnfc.driver.acr122_pcsc)。此驱动程序使用系统 PC/SC 守护程序来访问读卡器,而不是直接控制 USB 接口。要使此选项起作用,您需要将 lib-nfc 配置为使用 PC/SC 驱动程序而不是直接 USB 驱动程序。当您自己编译 libnfc 时,您可以通过仅显式激活基于 PC/SC 的驱动程序来做到这一点:
但是,请注意,此驱动程序已被弃用,libnfc 作者强烈反对使用它。
我在我的设备中找不到芯片,但我怀疑它是流行的 pn53x(设备04e6:5790
)。
今天有首选方法吗?在 Linux 和 macOS 上是否可以使用其他工具与 NFC 阅读器和标签进行通信?
编辑:虽然需要回答这个问题才能让 NFC 在 macOS 上运行,但目前似乎没有浏览器在桌面上支持此功能。
现在,我可以在 macOS 和 Linux 上将读卡器作为常规非接触式智能卡读卡器(通过 PC/SC 的 CCID)访问,但是如何使用 NFC 控制器从 NFC 标签而不是 ATR 获取类似 ATS 的东西?
c - libnfc - 模拟 NDEF URI - NFC
我正在使用 ACR122U-A9 NFC 阅读器和 Mac OS X。我想模拟和 NDEF URI 消息(例如https://stackoverflow.com
),所以当 Android 或(更新的)iPhone 接近 NFC 阅读器时,浏览器应该自动打开 URI。
为此,我正在使用来自 的nfc-emulate-forum-tag2.c示例libnfc
,该示例正在运行。我可以启动脚本,当我使用打开的 NFC 应用程序接近我的手机时,我会收到一个标签。在 nfc-emulate-forum-tag2.c 示例中,有以下脚本设置 NDEF 消息:
- 那么我需要如何设置它
__nfcforum_tag2_memory_area
以获取 NDEF URI 消息https://stackoverflow.com
呢? - 有没有我可以使用的 c 库或脚本?
android - 如何在aosp android中启用NFC
我有 aosp 10 源代码,但是当我通过闪烁运行构建映像时,我无法在连接的设备中找到 NFC。
如何检查设备中集成的 NFC 芯片?是否有任何命令可以检查终端?
根据设备制造商,他们表示他们集成了 NFC 芯片。但是如何检查它是否已经集成呢?
我检查了以下命令:
我还检查了设备/内核/nfc。
如何在“设置”中启用 NFC 在已连接设备中显示?或者如何检查设备中是否有 NFC 芯片?
android - 开始使用 Android NFC
我是 Android 上 NFC 平台的新手,我想开始使用一个简单的 NFC 应用程序,即读取标签和写入标签。有没有关于这个主题的好的指南或图书馆?我已经阅读了 android 文档,这是一个好的开始,但我不知道从那里开始。
任何善良的灵魂可以为我指明正确的方向吗?
祝你今天过得愉快!