Як зрабіць смартфон з функцыямі NFC

Як зрабіць смартфон з функцыямі NFC

NFC (блізкая бескантактавая сувязь) — адна з найважнейшых функцый сучасных смартфонаў. Гэтая тэхналогія дазваляе прыладам абменьвацца дадзенымі на кароткіх адлегласцях (звычайна менш за 4 см) для розных мэтаў, такіх як безнаяўныя плацяжы, папаўненне карты, доступ да дзвярэй і нават спалучэнне такіх прылад, як навушнікі або дынамікі. Многія людзі задаюцца пытаннем: ці можна «зрабіць смартфон з NFC»? Адказ — так, але гэта не значыць, што мы павінны ствараць смартфон з нуля, як вялікі завод. У гэтым артыкуле будзе абмеркаваны найбольш рэалістычны і разумны спосаб укаранення функцый NFC у «самаробны смартфон» або мадыфікаваны/сабраны смартфон, уключаючы неабходныя кампаненты, этапы інтэграцыі і асноўныя праблемы.

1. Зразумейце NFC і як ён працуе

NFC працуе на частаце 13,56 МГц і падтрымлівае такія рэжымы сувязі, як:

1. Рэжым чытання/запісу: смартфон дзейнічае як счытвальнік NFC-метак (напрыклад, чытае карты доступу або клейкія NFC-меткі).
2. Рэжым эмуляцыі карты: смартфон «эмулюе» карту, напрыклад, для плацяжоў або кантролю доступу.
3. Рэжым Peer-to-Peer: абмен дадзенымі паміж прыладамі (напрыклад, адпраўка кантактаў або хуткае спалучэнне).

У смартфонах модуль NFC звычайна складаецца з:
– кантролер/інтегральная схема NFC (асноўны чып кантролера NFC),
– антэна NFC (шпулькападобная антэна),
– бяспечны элемент (SE) або альтэрнатывы, такія як HCE (эмуляцыя хост-карты) для эмуляцыі карты,
– падключэнне да галоўнага працэсара праз шыну, напрыклад, I2C або SPI, а таксама кіраванне харчаваннем.

2. Вызначце падыход: стварэнне з нуля супраць мадыфікацыі прылады

Стварэнне смартфона з нуля (праектаванне друкаванай платы, выбар SoC, стварэнне прашыўкі базавай паласы, сертыфікацыя радыё і г.д.) надзвычай складанае і практычна немагчымае для маштабавання індывідуальна без вялікай каманды і выдаткаў.

Больш рэалістычны падыход:
1. Выберыце смартфон/плату, якая ўжо падтрымлівае NFC, але пакуль не актыўная (гэта датычыцца некаторых варыянтаў прылад).
2. Зрабіць смартфон на базе аднаплатнага кампутара (SBC) + сотавага модуля, а затым дадаць NFC.
3. Стварыце прыладу, падобную на смартфон (прыладу Android), з NFC, напрыклад, кіёск, карыстальніцкую партатыўную прыладу або прататып.

У гэтым артыкуле мы засяродзімся на 2-м і 3-м падыходах, паколькі яны маюць найбольшы тэхнічны сэнс і з'яўляюцца рэальнымі ў якасці праекта па распрацоўцы прылады.

3. Неабходныя кампаненты

Вось асноўныя кампаненты, якія спатрэбяцца, калі вы хочаце стварыць прыладу Android/партатыўную прыладу з NFC:

ЧЫТАННЕ  Як зрабіць смартфон з падвойнымі камерамі

а) Вылічальная платформа (мозг прылады)
– SBC (напрыклад, на базе ARM), які можа працаваць пад кіраваннем Android/Linux.
– Альтэрнатыва: больш «гатовая да выкарыстання» плата распрацоўкі для Android.

Важныя крытэрыі:
– Падтрымка інтэрфейсу I2C/SPI/UART для модуля NFC,
– Падтрымка мадыфікаваных драйвераў і ядраў,
– Дастаткова магутны для працы з Android.

б) Сотавы модуль (каб яго можна было назваць «смартфонам»)
Калі вы хочаце, каб прылада сапраўды магла тэлефанаваць/адпраўляць SMS/мабільныя дадзеныя:
– модуль 4G/5G (напрыклад, LTE-мадэм на базе USB або M.2),
– Падтрымка драйвераў і інтэграцыя ў аперацыйную сістэму.

Заўвага: гэта часта самая складаная частка, бо для галасавых выклікаў патрабуецца падтрымка IMS/VoLTE, што не заўсёды проста.

в) Модуль NFC
Вам спатрэбіцца NFC-модуль з выразна акрэсленымі характарыстыкамі. Гэты модуль можа быць:
– NFC IC + асобная антэна,
– Модуль, гатовы да інтэграцыі (невялікая плата), які забяспечвае злучэнні I2C/SPI і вывады перапыненняў.

Сярод папулярных у галіны чыпаў NFC ёсць чыпы ад NXP, STMicroelectronics і іншых. Аднак пры выбары чыпа варта таксама ўлічваць:
– наяўнасць драйвераў для Android,
– інтэграцыйная дакументацыя,
– патрабаванне бяспечнага элемента, калі вам патрэбна функцыя аплаты.

г) Антэна NFC
Антэны з'яўляюцца важным фактарам прадукцыйнасці. Што варта ўлічваць:
– памер шпулькі,
– размяшчэнне (звычайна каля задняй вокладкі),
– адлегласць ад металу/батарэі,
– супастаўленне/рэгуляванне імпедансу для забеспячэння стабільных паказанняў.

e) Элемент бяспекі (неабавязковы, але неабходны для плацяжоў)
Калі мэтай з'яўляецца толькі чытанне тэгаў (напрыклад, праверка балансу пэўнай карты, чытанне тэга UID, аўтаматызацыя), можна выкарыстоўваць звычайны NFC без бяспечнага элемента.

Аднак, калі мэтай з'яўляюцца плацяжы праз дотык або бяспечная эмуляцыя карты:
– Патрабуецца бяспечны элемент (убудаваны SE, SE на базе SIM-карты або знешні SE),
– плюс інтэграцыя сертыфікацыі і плацежнай экасістэмы (вельмі складана для самаробных праектаў).

Акрамя таго, Android падтрымлівае HCE (эмуляцыю карты хаста) для некаторых выпадкаў выкарыстання, але для камерцыйных плацяжоў усё яшчэ патрабуюцца патрабаванні бяспекі і супрацоўніцтва паміж пастаўшчыком і плацежнай сеткай.

f) Харчаванне, корпус, батарэя і экран
Каб прылада сапраўды нагадвала смартфон:
– Экран (LCD/OLED) + кантролер сэнсарнага экрана,
– Літый-іённы акумулятар + сістэма кіравання сістэмай кіравання аўтаномнай працай (BMS)/зарадная мікрасхема,
– Кіраванне харчаваннем,
– Чахол, які не перашкаджае працы антэны NFC.

Метал у корпусе можа перашкаджаць працы NFC, таму пластыкавыя матэрыялы больш спрыяльныя для NFC.

ЧЫТАННЕ  Як зрабіць смартфон з функцыяй распазнавання твараў

4. Этап інтэграцыі абсталявання NFC

Крок 1: Вызначэнне інтэрфейсу
Большасць модуляў NFC падключаюцца да працэсара праз:
– I2C (агульны),
– SPI (хутчэй),
– плюс кантакт IRQ/Interrupt для апавяшчэння сістэмы аб наяўнасці тэга.

Пераканайцеся, што матчыны плаце патрэбныя кантакты і сумяшчальныя ўзроўні напружання (напрыклад, 1,8 В або 3,3 В). Калі яны не супадаюць, выкарыстоўвайце рэгулятар узроўняў.

Крок 2: Распрацоўка размяшчэння антэны
Антэну трэба размясціць:
– як мага бліжэй да вонкавай паверхні (задняй вокладкі),
– далей ад вялікіх акумулятараў або металічных экранаў,
– не пакрытыя надакучлівымі металічнымі налепкамі або магнітнымі кольцамі.

Металічныя рамы або магнітныя мацавання могуць значна паменшыць радыус дзеяння NFC.

Крок 3: Падбор і налада антэны
У прамысловых мадэлях антэны NFC наладжваюцца з дапамогай узгадняльнай схемы (кандэнсатар/індуктар) для дасягнення рэзанансу на частаце 13,56 МГц. Калі вы выкарыстоўваеце гатовы модуль, ён звычайна папярэдне настроены, але можа запатрабаваць карэкціроўкі ў залежнасці ад корпуса і размяшчэння.

Крок 4: Базавы тэст на камунікацыю
Правядзіце пачатковае тэставанне:
– ці выяўлены модуль сістэмай (прылада I2C бачная),
– ці можа модуль выяўляць тэгі,
– ці стабільнае пакрыццё.

Базавыя інструменты ў Linux могуць дапамагчы праверыць шыну I2C, у той час як у Android вы будзеце тэставаць праз тэставыя праграмы LogCat і NFC.

5. Інтэграцыя праграмнага забеспячэння: драйвер, ядро ​​і Android Framework

Каб NFC працаваў на Android, недастаткова проста ўсталяваць абсталяванне. Вам патрэбныя праграмныя пласты:

а) Драйвер ядра
– Модуль NFC павінен быць распазнаны ядром праз адпаведны драйвер.
– Магчыма, вам спатрэбіцца ўключыць канфігурацыю ядра або дадаць драйверы.

б) HAL (узровень абстракцыі абсталявання)
Android выкарыстоўвае HAL для злучэння фрэймворка з абсталяваннем. Для NFC HAL павінен быць сумяшчальны з выкарыстоўваным чыпам.

c) Канфігурацыя сістэмы і дазволы
На Android вам трэба:
– уключыць функцыю NFC пры зборцы (сцягі функцый),
– пераканайцеся, што служба NFC працуе,
– дададзены файлы канфігурацыі пастаўшчыка, звязаныя з чыпамі NFC,
– пераканайцеся, што дазволы і палітыкі SELinux не блакуюць доступ.

г) Ужыванне і тэсціраванне
Пасля таго, як NFC уключаны:
– тэст чытання тэгаў NDEF,
– тэст рэжыму чытання/запісу,
– Тэст Android Beam (старая функцыя) або абмен адпаведнымі дадзенымі,
– тэставанне сумяшчальнасці з тэгамі MIFARE/NTAG па меры неабходнасці.

ЧЫТАННЕ  Тэхналогія вырабу падэкранных камер

6. Вялікія праблемы: аплата і сертыфікацыя

Многія людзі мяркуюць, што «наяўнасць NFC» азначае, што вы можаце адразу выкарыстоўваць яго для плацяжоў. Насамрэч, плацяжы NFC ўключаюць:
– Элемент бяспекі або эквівалентная схема бяспекі,
– сертыфікат бяспекі,
– адабрэнне ад плацежных сетак і банкаў,
– інтэграцыя з такімі сэрвісамі, як Google Wallet або лакальнымі плацежнымі сістэмамі.

Для асабістых праектаў найбольш рэалістычным з'яўляецца:
– чытаць NFC-меткі,
– сістэмы доступу (напрыклад, для дзвярэй),
– аўтаматызацыя з дапамогай NFC-метак,
– картка ўдзельніка, кіёск або ўнутраная заяўка.

Стварэнне самастойнай прылады, якую можна выкарыстоўваць для публічных плацежных сістэм, практычна нерэальна без афіцыйных галіновых каналаў.

7. Практычныя парады для паспяховага праекта

1. Пачніце з простай мэты: спачатку засяродзьцеся на чытанні тэгаў і напісанні NDEF.
2. Выкарыстоўвайце распаўсюджаны модуль NFC: абярыце той, у якога ёсць поўная дакументацыя і прыклады інтэграцыі.
3. Разгледзім выпадак з самага пачатку: металічныя корпусы і магніты — ворагі NFC.
4. Дайце час на адладку праграмнага забеспячэння: канфлікты драйвераў, SELinux, сістэмныя дазволы і сумяшчальнасць з Android часта патрабуюць часу.
5. Вымярэнне спажывання энергіі: NFC можа павялічыць спажыванне энергіі ў рэжыме чакання, калі ён не настроены належным чынам.
6. Задакументуйце разводку і падключэнне: невялікая памылка ў IRQ або вывадзе скіду можа зрабіць NFC нестабільным.

8. Кесімпулан

Стварэнне смартфона з падтрымкай NFC — гэта не проста ўстаўка модуля NFC у прыладу і скончыць працу. Рэалістычны працэс прадугледжвае стварэнне або мадыфікацыю партатыўнай прылады Android/партатыўнай прылады з падтрымкай інтэграцыі NFC, а затым даданне модуля NFC, адпаведнай антэны і наладу праграмнай падтрымкі (драйверы, HAL і канфігурацыя Android). Для такіх прыкладанняў, як счытванне метак, аўтаматызацыя, кантроль доступу або ўнутраныя прыкладання, гэты праект, безумоўна, выканальны. Аднак для функцый больш высокага ўзроўню, такіх як бескантактавыя плацяжы, вам давядзецца мець справу са складанымі элементамі бяспекі, сертыфікацыямі і галіновымі патрабаваннямі.

Калі хочаце, я магу адаптаваць гэты артыкул, каб ён быў больш тэхнічным (напрыклад, з прыкладамі архітэктуры стэка NFC для Android, схемамі падключэння I2C + IRQ + скід або этапамі зборкі AOSP) або больш практычным (лёгка знайсці спісы кампанентаў і этапы тэставання).

Правільны каментар