How to Interface the NXP PN7160 NFC Module With the i.MX8M Plus EVK?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to Interface the NXP PN7160 NFC Module With the i.MX8M Plus EVK?

331 Views
Niranjan123
Contributor III

Hi,

I am working with an i.MX8M Plus EVK and planning to integrate the NXP PN7160 NFC controller (using the PN7160 Raspberry Pi HAT: OM29110RPI-B).

regards,
Niranjan

0 Kudos
Reply
3 Replies

269 Views
danielchen
NXP TechSupport
NXP TechSupport

HI, @Niranjan123 

 

If you are using Android, please refer to below link  ,  it is about porting PN7160 with i.MX8M nano,   

https://community.nxp.com/t5/NFC-Knowledge-Base/Porting-PN7160-to-Android-14-on-i-MX8M-Nano-board/ta...

 

Regards

Daniel

0 Kudos
Reply

243 Views
Niranjan123
Contributor III

Hi,

Thank you for the link, but I am not using Android.

My setup is:

  • Board: i.MX8M Plus EVK

  • OS: Linux (Yocto-based Linux BSP from NXP, not Android)

  • NFC Module: PN7160 Raspberry Pi HAT (OM29110RPI-B)

  • Connection: I2C interface from the EVK expansion header to PN7160 HAT pins

My goal is to bring up the PN7160 in a Linux environment, using the NXP PN7160 Linux driver.

Could you please clarify the following for Linux (Yocto) on i.MX8MP EVK:

  1. Does NXP provide a Linux driver (kernel or user-space) for PN7160 that can be used on i.MX applications processors?

  2. If yes, where can I find the recommended

    • device-tree binding

    • required GPIOs (VEN / IRQ)

    • Linux kernel config options

    • sample DTS node for PN7160?

  3. Which I2C bus on the i.MX8MP EVK expansion connector is recommended for connecting external modules like PN7160?
    (There is no Raspberry Pi 40-pin header on this board, so I want to confirm the correct I2C bus.)

  4. Are there any known reference implementations of PN7160 running on an i.MX8M Plus EVK (under Linux)?

Current status on my side:

  • Verified I2C buses available: /dev/i2c-0, /dev/i2c-1, /dev/i2c-2, /dev/i2c-6

  • Expansion header signals checked in schematic

  • Planning to use I2C2 or I2C1 depending on recommended wiring

  • Before wiring PN7160 HAT, I want NXP confirmation on:
    ✔ Correct I2C bus
    ✔ Required voltage levels
    ✔ Required IRQ and VEN GPIO pins

Any guidance for Linux + PN7160 + i.MX8MP would be very helpful.

Thanks!

Tags (1)
0 Kudos
Reply

226 Views
danielchen
NXP TechSupport
NXP TechSupport

Hi @Niranjan123 

Please refer to below PN7160 Linux porting guide,    You can get the Linux driver and device tree information from below porting duide. 

PN7160 Linux porting guide

 

Regards

Daniel

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2232731%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EHow%20to%20Interface%20the%20NXP%20PN7160%20NFC%20Module%20With%20the%20i.MX8M%20Plus%20EVK%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2232731%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3C%2FP%3E%3CP%3EI%20am%20working%20with%20an%20%3CSTRONG%3Ei.MX8M%20Plus%20EVK%3C%2FSTRONG%3E%20and%20planning%20to%20integrate%20the%20%3CSTRONG%3ENXP%20PN7160%20NFC%20controller%3C%2FSTRONG%3E%20(using%20the%20PN7160%20Raspberry%20Pi%20HAT%3A%20OM29110RPI-B).%3CBR%20%2F%3E%3CBR%20%2F%3Eregards%2C%3CBR%20%2F%3ENiranjan%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2246605%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20Interface%20the%20NXP%20PN7160%20NFC%20Module%20With%20the%20i.MX8M%20Plus%20EVK%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2246605%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHI%2C%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F244755%22%20target%3D%22_blank%22%3E%40Niranjan123%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EIf%20you%20are%20using%20Android%2C%20please%20refer%20to%20below%20link%26nbsp%3B%20%2C%26nbsp%3B%20it%20is%20about%20porting%20PN7160%20with%20i.MX8M%20nano%2C%26nbsp%3B%20%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2FNFC-Knowledge-Base%2FPorting-PN7160-to-Android-14-on-i-MX8M-Nano-board%2Fta-p%2F2001159%22%20target%3D%22_blank%22%3Ehttps%3A%2F%2Fcommunity.nxp.com%2Ft5%2FNFC-Knowledge-Base%2FPorting-PN7160-to-Android-14-on-i-MX8M-Nano-board%2Fta-p%2F2001159%3C%2FA%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3ERegards%3C%2FP%3E%0A%3CP%3EDaniel%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2246806%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20Interface%20the%20NXP%20PN7160%20NFC%20Module%20With%20the%20i.MX8M%20Plus%20EVK%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2246806%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F244755%22%20target%3D%22_blank%22%3E%40Niranjan123%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EPlease%20refer%20to%20below%20PN7160%20Linux%20porting%20guide%2C%26nbsp%3B%20%26nbsp%3B%20You%20can%20get%20the%20Linux%20driver%20and%20device%20tree%20information%20from%20below%20porting%20duide.%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com.cn%2Fdocs%2Fen%2Fapplication-note%2FAN13287.pdf%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EPN7160%20Linux%20porting%20guide%3C%2FA%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3ERegards%3C%2FP%3E%0A%3CP%3EDaniel%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2246785%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20Interface%20the%20NXP%20PN7160%20NFC%20Module%20With%20the%20i.MX8M%20Plus%20EVK%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2246785%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3C%2FP%3E%3CP%3EThank%20you%20for%20the%20link%2C%20but%20I%20am%20%3CSTRONG%3Enot%20using%20Android%3C%2FSTRONG%3E.%3C%2FP%3E%3CP%3EMy%20setup%20is%3A%3C%2FP%3E%3CUL%3E%3CLI%3E%3CP%3E%3CSTRONG%3EBoard%3A%3C%2FSTRONG%3E%20i.MX8M%20Plus%20EVK%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3E%3CSTRONG%3EOS%3A%3C%2FSTRONG%3E%20Linux%20(Yocto-based%20Linux%20BSP%20from%20NXP%2C%20%3CEM%3Enot%20Android%3C%2FEM%3E)%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3E%3CSTRONG%3ENFC%20Module%3A%3C%2FSTRONG%3E%20PN7160%20Raspberry%20Pi%20HAT%20(OM29110RPI-B)%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3E%3CSTRONG%3EConnection%3A%3C%2FSTRONG%3E%20I2C%20interface%20from%20the%20EVK%20expansion%20header%20to%20PN7160%20HAT%20pins%3C%2FP%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3EMy%20goal%20is%20to%20bring%20up%20the%20PN7160%20in%20a%20%3CSTRONG%3ELinux%20environment%3C%2FSTRONG%3E%2C%20using%20the%20NXP%20PN7160%20Linux%20driver.%3C%2FP%3E%3CH3%20id%3D%22toc-hId-2001562195%22%20id%3D%22toc-hId-2001614836%22%3E%3CSTRONG%3ECould%20you%20please%20clarify%20the%20following%20for%20Linux%20(Yocto)%20on%20i.MX8MP%20EVK%3A%3C%2FSTRONG%3E%3C%2FH3%3E%3COL%3E%3CLI%3E%3CP%3E%3CSTRONG%3EDoes%20NXP%20provide%20a%20Linux%20driver%20(kernel%20or%20user-space)%20for%20PN7160%3C%2FSTRONG%3E%20that%20can%20be%20used%20on%20i.MX%20applications%20processors%3F%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3EIf%20yes%2C%20where%20can%20I%20find%20the%20recommended%3C%2FP%3E%3CUL%3E%3CLI%3E%3CP%3Edevice-tree%20binding%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3Erequired%20GPIOs%20(VEN%20%2F%20IRQ)%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3ELinux%20kernel%20config%20options%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3Esample%20DTS%20node%20for%20PN7160%3F%3C%2FP%3E%3C%2FLI%3E%3C%2FUL%3E%3C%2FLI%3E%3CLI%3E%3CP%3E%3CSTRONG%3EWhich%20I2C%20bus%20on%20the%20i.MX8MP%20EVK%20expansion%20connector%3C%2FSTRONG%3E%20is%20recommended%20for%20connecting%20external%20modules%20like%20PN7160%3F%3CBR%20%2F%3E(There%20is%20no%20Raspberry%20Pi%2040-pin%20header%20on%20this%20board%2C%20so%20I%20want%20to%20confirm%20the%20correct%20I2C%20bus.)%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3EAre%20there%20%3CSTRONG%3Eany%20known%20reference%20implementations%3C%2FSTRONG%3E%20of%20PN7160%20running%20on%20an%20i.MX8M%20Plus%20EVK%20(under%20Linux)%3F%3C%2FP%3E%3C%2FLI%3E%3C%2FOL%3E%3CH3%20id%3D%22toc-hId-194107732%22%20id%3D%22toc-hId-194160373%22%3E%3CSTRONG%3ECurrent%20status%20on%20my%20side%3A%3C%2FSTRONG%3E%3C%2FH3%3E%3CUL%3E%3CLI%3E%3CP%3EVerified%20I2C%20buses%20available%3A%20%2Fdev%2Fi2c-0%2C%20%2Fdev%2Fi2c-1%2C%20%2Fdev%2Fi2c-2%2C%20%2Fdev%2Fi2c-6%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3EExpansion%20header%20signals%20checked%20in%20schematic%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3EPlanning%20to%20use%20I2C2%20or%20I2C1%20depending%20on%20recommended%20wiring%3C%2FP%3E%3C%2FLI%3E%3CLI%3E%3CP%3EBefore%20wiring%20PN7160%20HAT%2C%20I%20want%20NXP%20confirmation%20on%3A%3CBR%20%2F%3E%E2%9C%94%20Correct%20I2C%20bus%3CBR%20%2F%3E%E2%9C%94%20Required%20voltage%20levels%3CBR%20%2F%3E%E2%9C%94%20Required%20IRQ%20and%20VEN%20GPIO%20pins%3C%2FP%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3EAny%20guidance%20for%20%3CSTRONG%3ELinux%20%2B%20PN7160%20%2B%20i.MX8MP%3C%2FSTRONG%3E%20would%20be%20very%20helpful.%3C%2FP%3E%3CP%3EThanks!%3C%2FP%3E%3C%2FLINGO-BODY%3E