Не удается отправить данные в Galaxy Nexus или из него через LLCP - PullRequest
5 голосов
/ 09 марта 2012

У меня есть телефон Galaxy Nexus с Android 4.0.2 и демоверсия NXP PN532-C106.

Я пытаюсь подключить их для отправки данных по протоколу LLCP, и я использую для этого «npp-server» и «llcp-test-server» из libnfc-llcp. Но я могу только заставить их установить соединение, только чтобы оно было закрыто. Я не могу отправить какие-либо данные, и logcat показывает, что в настройке соединения что-то не так, см. Конец сообщения.

Я попытался найти пример кода для отправки данных, и я пытался использовать nfcpy (библиотеку python для связи по nfc), но он отказывается найти мою демонстрационную плату. А для примера "npp-server" требуется файл, и я использую пустой файл, так как не знаю, что в него вставить.

Я не знаю, если что-то не так с моей настройкой или я что-то упустил. Есть кто-нибудь, кто знает, почему мое соединение так быстро умирает, или у меня есть рабочий пример, которому я могу следовать?

Вот вывод из logcat
Из теста с npp-сервером

03-09 14:22:28.035: D/dalvikvm(196): GC_EXPLICIT freed 134K, 10% free 24179K/26759K, paused 6ms+5ms
03-09 14:22:58.723: W/NFC-LLC(429): bad LLC length byte 90
03-09 14:22:58.723: W/NFC-LLC(429): bad LLC length byte ec
03-09 14:22:58.723: W/NFC-LLC(429): bad LLC length byte 50
03-09 14:22:58.723: W/NFC-LLC(429): bad LLC length byte 0
03-09 14:22:58.723: W/NFC-LLC(429): bad LLC length byte 31
03-09 14:22:58.723: W/NFC-LLC(429): bad LLC length byte 56
03-09 14:22:59.129: D/NFC JNI(429): Discovered P2P Target
03-09 14:22:59.137: D/NfcService(429): LLCP Activation message
03-09 14:22:59.137: D/NfcService(429): NativeP2pDevice.MODE_P2P_TARGET
03-09 14:22:59.168: D/NfcService(429): Cannot connect remote Target. Polling loop restarted.
03-09 14:22:59.785: W/ThrottleService(196): unable to find stats for iface rmnet0
03-09 14:23:04.481: D/dalvikvm(7375): GC_CONCURRENT freed 151K, 2% free 14308K/14535K, paused 7ms+3ms
03-09 14:23:08.535: D/NfcService(429): Set Foreground Dispatch
03-09 14:23:08.543: D/NfcService(429): Set Foreground Dispatch
03-09 14:23:08.598: V/PhoneStatusBar(271): setLightsOn(true)
03-09 14:23:08.598: I/WindowManager(196): createSurface Window{41c2a718 android.stickynotes/android.stickynotes.StickyNotesActivity paused=false}: DRAW NOW PENDING
03-09 14:23:20.238: W/NFC-LLC(429): bad LLC length byte d0
03-09 14:23:20.238: W/NFC-LLC(429): bad LLC length byte db
03-09 14:23:20.238: W/NFC-LLC(429): bad LLC length byte 52
03-09 14:23:20.238: W/NFC-LLC(429): bad LLC length byte 1
03-09 14:23:20.340: W/NFC_uart(429): timeout!
03-09 14:23:20.340: W/NFC-LLC(429): LLC length mis-match
03-09 14:23:20.637: D/NfcService(429): SE FIELD ACTIVATED
03-09 14:23:20.637: D/NfcService(429): SE FIELD DEACTIVATED

Эта часть из теста с llcp-test-server

enter code here

03-09 14:23:20.653: D/NFC JNI(429): Discovered P2P Target
03-09 14:23:20.653: D/NfcService(429): LLCP Activation message
03-09 14:23:20.653: D/NfcService(429): NativeP2pDevice.MODE_P2P_TARGET
03-09 14:23:20.684: D/NfcService(429): Cannot connect remote Target. Polling loop restarted.
03-09 14:23:53.957: D/NfcService(429): Set Foreground Dispatch
03-09 14:23:53.965: D/NfcService(429): Set Foreground Dispatch
03-09 14:23:53.973: V/PhoneStatusBar(271): setLightsOn(true)
03-09 14:23:53.988: W/InputManagerService(196): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@41a3b620
03-09 14:24:03.082: W/NFC_uart(429): timeout!
03-09 14:24:03.082: W/NFC-LLC(429): LLC length mis-match
03-09 14:24:03.387: D/NfcService(429): SE FIELD ACTIVATED
03-09 14:24:03.387: D/NfcService(429): SE FIELD DEACTIVATED
03-09 14:24:03.387: D/NfcService(429): SE FIELD ACTIVATED
03-09 14:24:03.387: D/NfcService(429): SE FIELD DEACTIVATED
03-09 14:24:03.418: D/NFC JNI(429): Discovered P2P Initiator
03-09 14:24:03.418: D/NFC JNI(429): 46 
03-09 14:24:03.418: D/NFC JNI(429): 66 
03-09 14:24:03.418: D/NFC JNI(429): 6d 
03-09 14:24:03.418: D/NfcService(429): LLCP Activation message
03-09 14:24:03.418: D/NfcService(429): NativeP2pDevice.MODE_P2P_INITIATOR
03-09 14:24:03.418: I/NFC JNI(429): LLCP Link deactivated
03-09 14:24:03.418: D/NfcService(429): Target Activate LLCP OK
03-09 14:24:03.418: I/NfcP2pLinkManager(429): LLCP activated
03-09 14:24:03.418: D/NfcP2pLinkManager(429): onP2pInRange()
03-09 14:24:03.426: D/PermissionCache(116): checking android.permission.READ_FRAME_BUFFER for uid=1025 => granted (457 us)
03-09 14:24:03.567: D/dalvikvm(429): GC_FOR_ALLOC freed 174K, 5% free 14576K/15303K, paused 15ms
03-09 14:24:03.574: I/dalvikvm-heap(429): Grow heap (frag case) to 17.416MB for 3265936-byte allocation
03-09 14:24:03.621: D/dalvikvm(429): GC_CONCURRENT freed 4K, 5% free 17761K/18503K, paused 4ms+5ms
03-09 14:24:03.660: D/NfcP2pLinkManager(429): onP2pSendConfirmationRequested()
03-09 14:24:03.668: D/NfcService(429): LLCP Link Deactivated message. Restart polling loop.
03-09 14:24:03.668: D/NfcService(429): not disconnecting from initiator
03-09 14:24:03.668: I/NfcP2pLinkManager(429): LLCP deactivated.
03-09 14:24:03.668: D/PhoneStatusBar(271): disable: < EXPAND* icons alerts ticker system_info back home recent clock >
03-09 14:24:03.676: I/WindowManager(196): createSurface Window{41bde010  paused=false}: DRAW NOW PENDING
03-09 14:24:03.684: D/libEGL(429): loaded /system/lib/egl/libGLES_android.so
03-09 14:24:03.699: D/libEGL(429): loaded /vendor/lib/egl/libEGL_POWERVR_SGX540_120.so
03-09 14:24:03.707: D/libEGL(429): loaded /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so
03-09 14:24:03.715: D/libEGL(429): loaded /vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so
03-09 14:24:03.817: D/OpenGLRenderer(429): Enabling debug mode 0
03-09 14:24:03.824: W/IInputConnectionWrapper(7375): showStatusIcon on inactive InputConnection
03-09 14:24:03.824: W/InputManagerService(196): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@41b90588 (uid=10090 pid=7375)
03-09 14:24:04.426: D/NfcP2pLinkManager(429): Debounce timeout
03-09 14:24:04.426: D/NfcP2pLinkManager(429): onP2pOutOfRange()
03-09 14:24:04.754: D/PhoneStatusBar(271): disable: < expand* icons alerts ticker system_info back home recent clock >
03-09 14:24:04.801: W/SurfaceTexture(429): freeAllBuffersExceptCurrentLocked called but mQueue is not empty
03-09 14:24:07.676: D/NfcService(429): SE FIELD ACTIVATED
03-09 14:24:07.699: D/NfcService(429): SE FIELD DEACTIVATED`

1 Ответ

0 голосов
/ 24 июля 2015

Я использовал этот проект от Arduino + PM532. Я использовал библиотеку PN532 на GitHub. Используя его, я мог отправить текст и изображение из PM532 на телефон Android. Вы можете использовать эту библиотеку (https://github.com/don/NDEF).

...