Беспроводная NFC-память от STMicroelectronics

Технология nfc создавалась для ограниченного круга приложений, таких как бесконтактная оплата, электронные ключи, электронные билеты и т. д. однако идея обмена данными на сверхмалых расстояниях оказалась настолько удачной, что сейчас область применения nfc значительно расширилась. активные и пассивные интеллектуальные nfc-устройства используются в промышленности, портативной электронике, медицине, автомобильном транспорте и других отраслях. в публикации предложен краткий обзор nfc-eeprom с двойным интерфейсом от компании stmicroelectronics.

Near Field Communication (NFC) представляет собой беспроводную технологию обмена данными, работающую с радиодиапазоном 13,56  МГц, и является развитием более ранних стандартов бесконтактных карт ISO/IEC 14443 и ISO/IEC 15693.

NFC-устройства объединяют функции привычной бесконтактной карты и ретранслятора и способны выполнять двунаправленный обмен данными, находясь в непосредственной близости друг от друга. Разделяют пассивные и активные NFC-устройства. Активные могут самостоятельно создавать электромагнитное поле для поддержания радиоканала.

  • эмуляция работы обычной бесконтактной карты (CARD EMULATION MODE);
  • обмен между пассивными и активными NFC-устройствами (READER/WRITER MODE);
  • обмен между двумя активными NFC-устройствами (PEER-TO-PEER MODE).

Изначально технология NFC была задумана как развитие бесконтактных карт для систем оплаты, однако в дальнейшем превратилась в полноценную беспроводную технологию обмена данными и нашла применение в самых разных областях и устройствах. Например, NFC-модули появились во многих современных смартфонах, а поддержка данного стандарта присутствует в ОС Android (начиная с версии 4.0)

Широкую номенклатуру NFC-решений предлагает компания STMicroelectronics: от пассивных NFC-устройств до NFC-контроллеров (рис. 1). Данная статья посвящена наиболее интересному сегменту NFC-устройств от STMicroelectronics, а именно памяти EEPROM с двойным интерфейсом.

NFC: особенности и стандарты

Говоря о NFC, следует кратко коснуться основных отраслевых стандартов, определяющих данную технологию (табл. 1).

Основные положения, относящиеся к NFC, представлены в стандарте ISO/IEC 18092. В России существует переведенный и адаптированный аналог — ГОСТ Р ИСО/МЭК 18092-2022 «Телекоммуникации и обмен информацией между системами. Коммуникация в ближнем поле. Интерфейс и протокол (NFCIP-1)».

ГОСТ Р ИСО/МЭК 18092-2022 определяет режимы индуктивной связи устройств, работающих на центральной частоте 13,56 МГц, интерфейс и протокол коммуникации при активном и пассивном режиме связи, схемы модуляции, кодирования, скорости передачи и радиочастотную структуру интерфейса устройств NFC, схемы инициализации и условия, необходимые для контроля за конфликтными ситуациями во время инициализации.

Как уже было сказано, изначально технология NFC создавалась как развитие стандартов бесконтактных карт ISO/IEC 14443 и ISO/IEC 15693. По этой причине NFC-устройства совместимы с существующей инфраструктурой бесконтактных карт. Для подтверждения совместимости в документации указывается соответствующий стандарт.

От ISO/IEC 14443 и ISO/IEC 15693 технология NFC унаследовала и физическую реализацию канала передачи данных. Параметры радиоканала определяются в стандарте ISO/IEC 18000 Часть 3 «Параметры для интерфейса воздушных коммуникаций в 13,56 МГц».

EEPROM с двойным интерфейсом от STMicroelectronics

Наиболее интересным NFC-решением от STMicroelectronics представляются активные NFC-устройства серий M24LR, M24SR, ST25DV-I2C и ST25DV-PWM. По сути, это микросхемы EEPROM с двойным интерфейсом (рис. 2). Серии M24LR, M24SR, ST25DV-I2C обеспечивают доступ к EEPROM со стороны других NFC-устройств по радиоканалу, а также доступ со стороны управляющего микроконтроллера по I2C. Серия ST25DV-PWM вместо I2C имеет ШИМ-выходы.

Между собой серии M24LR, M24SR, ST25DV-I2C и ST25DV-PWM различаются параметрами NFC-канала, характеристиками памяти, эксплуатационными характеристиками и наличием дополнительных особенностей. Поскольку статья посвящена NFC, то начать ее следует именно с рассмотрения параметров NFC-канала и дополнительных функций микросхем.

Характеристики NFC-канала и дополнительные особенности EEPROM с двойным интерфейсом

Серии EEPROM с двойным интерфейсом имеют различную дальность действия и скорость обмена данными по NFC. Серия M24SR совместима со стандартом ISO14443 и может обеспечивать обмен информацией с другими NFC-устройствами на расстояниях до 10 см (табл. 2).

Дальность действия радиоканала напрямую определяет и скорость передачи данных. Для представителей серии M24SR скорость достигает 106 кбит/с, в то время как для остальных микросхем стандартная скорость составляет 26  кбит/с. Для M24LR, ST25DV возможна частота обмена 53  кбит/с.Беспроводная NFC-память от STMicroelectronics

Вторым рабочим интерфейсом для серий M24LR, M24SR, ST25DV-I2C является I2C, максимальная частота обмена по которому составляет 1 МГц для M24LR и ST25DV-I2C, и 400 кГц для M24SR.

В микросхемах ST25DV-PWM отсутствует I2C-интерфейс. Вместо него в распоряжении пользователя оказывается один или два ШИМ-выхода (табл. 3). Суть данного решения достаточно очевидна: благодаря таким микросхемам можно обойтись без дополнительного управляющего микроконтроллера в целом ряде простых приборов, таких как светодиодные светильники, устройства с электродвигателями (например, электронные замки) и т. д.

Выходная частота ШИМ-сигнала в ST25DV-PWM может быть запрограммирована в диапазоне 488–31250 Гц. Разрядность зависит от частоты и достигает 15 бит при 488 Гц ШИМ. Микросхема способна обеспечивать выходной ток до 4  мА. Конечно же, этого недостаточно для прямого управления электродвигателем или мощным светодиодом, соответственно, в зависимости от приложения в схеме может понадобиться усилитель или драйвер.

В остальных сериях — M24LR, M24SR, ST25DV-I2C — также существует возможность реализации простейших функций управления без участия дополнительного микроконтроллера. Для этого могут быть использованы цифровые выходы с открытым истоком. В серии ST25DV-I2C есть модели с КМОП-выходами.

Важным достоинством микросхем ST25DV-I2C является наличие встроенного буфера объемом 256 байт. С его помощью удается реализовать функцию быстрого обмена данными (Fast Transfer mode) между контроллером и внешним NFC-устройством.

Также следует отметить интересную функцию сбора энергии (Energy Harvesting), которая присутствует в сериях M24LR и ST25DV-I2C. Эти микросхемы способны собирать энергию внешнего электромагнитного поля, создаваемого ридером, и применять ее не только для собственного питания, но и для питания других компонентов схемы.

Эксплуатационные характеристики и параметры EEPROM

Не надо забывать, что M24LR, M24SR, ST25DV-I2C и ST25DV-PWM — это в первую очередь микросхемы памяти, а потому следует рассмотреть и соответствующие параметры данных компонентов (табл. 4).

Все представленные серии имеют объем памяти EEPROM до 64 кбит, за исключением ST25DV-PWM, для которой существуют только 2-кбит модели.

Для защиты данных от взлома разработчикам предлагается использовать пароли, кроме того, в ST25DV-PWM присутствует блок цифровой подписи TruST25.

С точки зрения длительности хранения данных серии также различаются. При этом выделяется серия M24SR. По утверждениям STMicroelectronics, представители M24SR способны сохранять информацию в течение 200 лет при температуре 55 °С.

https://www.youtube.com/watch?v=JqxmDBnCUOs

Для всех микросхем рабочий диапазон температур при использовании NFC-канала составляет –40… 85 °C. Если же радиоинтерфейс не используется, возможна работа в диапазоне –40… 105 °C (кроме M24LR).

Анализируя характеристики отдельных серий, трудно дать какие-либо рекомендации по применению в той или иной области. Скорее выбор будет основываться на особенностях конкретного приложения. Тем не менее микросхемы EEPROM с двойным интерфейсом от STMicroelectronics будут востребованы в бытовых приложениях, медицинской технике, промышленном оборудовании, в портативной электронике и иных областях.

Обзор модельного ряда EEPROM с двойным интерфейсом от STMicroelectronics

В настоящий момент номенклатура EEPROM с двойным интерфейсом от STMicroelectronics включает более десятка моделей. Кроме того, каждая модель имеет различные корпусные исполнения: SO8, TSSOP8, UFDFPN (табл. 5).

Инструменты разработки и отладки

Важное преимущество продукции STMicroelectronics — хорошая техническая поддержка. Специалистам предлагается весь спектр средств разработки и отладки: программные библиотеки, оценочные наборы, огромный перечень руководств и документации, утилита для расчета печатных катушек.

Для каждой серии микросхем (за исключением самой новой серии ST25DV-PWM) выпускаются различные отладочные наборы. При этом существует выбор между законченными наборами Discovery и платами расширения для фирменных стеков Nucleo от STMicroelectronics (рис. 3–5). Каждый из наборов сопровождается программным пакетом с примерами и библиотеками.

Большая часть микросхем имеет повыводную совместимость (8-выводные корпуса), кроме того, они способны работать с одними и теми же антеннами. Для NFC применяются как печатные антенны, так и SMD-индуктивности.

Расчет печатной антенны может оказаться наиболее пугающим этапом разработки, поэтому STMicroelectronics предлагает использовать для таких целей простую утилиту. От разработчика требуется лишь ввести параметры антенны (число витков, длина, ширина), параметры проводников (ширина, зазор, толщина металлизации), параметры основания (толщина, диэлектрическая проницаемость), после чего программа автоматически высчитает величину эквивалентной индуктивности (рис. 6).

Заключение

Технология NFC является дальнейшим развитием бесконтактных устройств ближнего радиуса действия и имеет обратную совместимость со всей существующей инфраструктурой бесконтактных карт, поддерживающих стандарты ISO/IEC 14443 и ISO/IEC 15693.

Компания STMicroelectronics предлагает широкий выбор NFC-решений, начиная от пассивных устройств и заканчивая NFC-контроллерами. Данная статья посвящена микросхемам EEPROM с двойным интерфейсом. На сегодня STMicroelectronics выпускает три серии микросхем, обеспечивающих доступ к памяти через NFC-радиоканал и I2C-интерфейс:

  • M24SR с объемом до 64 кбит и радиусом действия до 10 см;
  • M24LR с объемом до 64 кбит, с увеличенным радиусом действия и функцией сбора энергии;
  • ST25DV-I2C с объемом до 64 кбит, с увеличенным радиусом действия, с функцией сбора энергии и возможностью ускоренного обмена между микроконтроллером и NFC-ридером.

Эти микросхемы могут использоваться в бытовых приложениях, медицинской технике, промышленном оборудовании, в портативной электронике и т. д.

Особое место в номенклатуре STMicroelectronics занимает серия ST25DV-PWM, у которой вместо I2C реализованы ШИМ-выходы. Такая особенность позволяет отказаться от управляющего контроллера в целом ряде приложений, например при создании светодиодных светильников или электронных замков.

Литература:

Android beam

Для начала нужно убедиться, что оба устройства имеют включенный NFC, активный Android Beam, а их экраны разблокированы. На тех моделях, что мы тестировали, NFC работает только в том случае, если включен экран и устройство полностью разблокировано. Но возможно, в других аппаратах будет использован и другой алгоритм.

В любом случае, активный интерфейс требует для работы совсем немного энергии батареи, и пока описанный подход выглядит вполне разумно. Один из вариантов упрощения работы — отключение экрана блокировки. В этом случае для опознавания метки будет достаточно просто включить смартфон.

Другим неудобством является необходимость подтверждения операции касанием экрана после того, как устройства найдут друг друга. Это не всегда просто сделать без нарушения связи, тем более когда оба устройства находятся на весу в руках у двух разных людей.

Включение технологии NFC

Следующим шагом надо выбрать одно из приложений на аппарате, с которого планируется передача. В частности это могут быть:

Далее приближаете устройства друг к другу. При обнаружении партнера вы услышите сигнал на устройстве-отправителе, и изображение на рабочем столе уменьшится. В этот момент нужно коснуться экранной картинки и держать палец, пока не услышите второй сигнал — об успешной передаче.

Передача приложения через Android Beam

Мы попробовали указанные в списке варианты, и практически все они действительно работают. Даже то, что наши устройства были выпущены разными производителями, не помешало им найти общий язык. Но несколько комментариев все-таки стоит сделать. С маршрутами в Google Maps проблем нет, а вариант с местом не очень интересен, т. к. передается только текущее отображение карты.

Точка же, отмеченная на экране исходного телефона, к получателю не попадает. Ситуация исправляется использованием приложения «Адреса», которое передает данные корректно. При отправке контактов теряется фотография, поскольку с технической точки зрения формат передачи соответствует текстовым файлам vcf.

Если говорить про приложения, то отправить можно не только установленные на телефоне, но и просто открытые карточки в Google Play. Аналогично поддерживаются книги и другой контент из магазина. Естественно, речь идет о передаче ссылок, а не самих загруженных или тем более купленных элементов.

С отправкой фотографий обнаружилась проблема: аппарат Sony оказался неспособен работать с данными такого типа. Официальная формулировка звучит как «Устройство получателя не поддерживает передачу больших объемов данных через Android Beam». Вот вам и первый признак молодости интерфейса или же недостаточной детализации технических спецификаций устройств.

Формально мы имеем в двух аппаратах и NFC, и Android Beam, а на практике их реальные возможности существенно отличаются, и узнать об этом можно только в результате проверки. Что уж говорить про менее именитых производителей — их вариант реализации данной технологии может быть совсем непредсказуемым.

Кстати, что касается самой работы Android Beam. В описании технологии указывается, что для передачи данных используется установление связи по Bluetooth после первоначального согласования настроек по NFC. Учитывая, что все работающие форматы предполагали действительно небольшой объем передаваемых данных, для них вполне хватало и скорости NFC, а вот для фотографий его было бы явно мало.

Так что можно предположить, что в Sony как раз и не реализовано переключение на более скоростной интерфейс. Понять, является ли эта проблема программной (напомним, что на этом устройстве установлен Android 4.0.4) или аппаратной, не представляется возможным.

Мы попытались также отправить собственную музыку и видео аналогичным образом из соответствующих приложений, но на приемнике ничего не появлялось.

Использование готовых меток для управления устройством

Одним из активных участников процесса внедрения NFC является компания Sony. В ее аппаратах предустановленна программа Smart Connect, поддерживающая работу с оригинальными метками Sony. При желании с использованием утилиты SmartTag Maker вы можете создать их самостоятельно из чистых заготовок.

Для работы системы используется формат NDEF URI с кодированием номера/цвета метки в текстовой ссылке. Всего система предусматривает до восьми меток, которые обозначены как «дом», «офис», «машина», «спальня», «слушать», «играть», «активности», «смотреть».

Вариант оригинальных меток Sony SmartTags

Сама программа Smart Connect работает не только с NFC-метками, но и с другими подключаемыми к телефону устройствами, включая гарнитуры, блок питания, устройства Bluetooth. Достаточно удобно, что штатные настройки уже неплохо соответствуют указанным выше сценариям. При этом пользователь может перепрограммировать все схемы; в каждой из них указывается набор из условия и действий.

Настройка работы с метками в Sony Smart Connect

В качестве условия можно использовать опознание метки или подключение устройства, дополнительно можно ограничить время работы схемы. Набор действий достаточно широкий, в него входят запуск приложения, открытие ссылки в браузере, запуск музыки, регулировка громкости и режима, подключение аудиоустройства Bluetooth, отправка SMS, звонок, управление беспроводными интерфейсами, регулировка яркости и другие действия.

Но на самом деле не обязательно использовать фирменные метки Sony — можно найти применение и готовым меткам, не допускающим перезаписи информации. Например, это могут быть использованные транспортные карты. Дело в том, что каждая из них имеет собственный уникальный идентификатор, который можно привязать к определенным действиям специальными программами.

В магазине Play Store есть несколько утилит для этого сценария, упомянем пару из них:

Напомним, что не стоит устанавливать сразу несколько подобных программ. Удобства от такого режима не добавится, поскольку при обнаружении метки на экране телефона будет возникать диалоговое окно с выбором программы для ее обработки.

Во время поиска программ для работы с метками мы также встретились с еще одним классом утилит, которые могут быть интересны в случае наличия записываемых меток. Эти программы используют собственный оригинальный формат записей, работать с которым могут только они сами. При этом набор возможных действий почти не отличается от описанных выше:

  • NFC Actions: возможность работы с облачным сервисом для хранения действий меток, запуск приложений, все традиционные для NDEF действия и несколько дополнительных (включение Wi-Fi, фонарика и т. п.);
  • NFC Profile: изменение некоторых параметров конфигурации устройства, включая состояние беспроводных интерфейсов, будильник, а также запуск программ;
  • NFC Smart Q: опции по настройке режимов телефона, запуску приложений, можно использовать несколько записей на одной метке, дополнительно создается короткая web-ссылка стандартного формата NDEF, которая позволяет на новом устройстве загрузить данную программу и использовать некоторые из опций;
  • NFC Task Launcher: кроме меток NFC может активировать настройки по подключению к Bluetooth или Wi-Fi, среди действий есть переключение режимов, интерфейсов, громкости и настроек экрана, публикации в социальных сетях, отправка e-mail и SMS, запуск приложений, открытие страниц в браузере, управление медиаплеером, настройка будильника, телефонный звонок.

Напомним, что в настоящий момент чтение метки осуществляется только при разблокированном аппарате. Так что сценарий «пришел домой, положил телефон на тумбочку — автоматически переключил профиль, отключил звонок и Bluetooth, настроил будильник» потребует от пользователя некоторых действий. Такое поведение все-таки немного ограничивает возможности программ.

Как работает nfc в телефоне

Базовый принцип, который положен в основу работы данной технологии, – это обмен радиосигналом. Аналогичный метод применяется во всех беспроводных модулях. Разница между NFC и остальными заключается в расстоянии, на котором действует сигнал − ≥10 см. Изначально формат предполагался как способ расширения функционала бесконтактных карт, но благодаря широкому распространению и популярности, разработчики придумали несколько новых способов применения:

  • обычный режим по считывания информации;
  • эмуляция, применяемая при наделении модуля функциями платёжного инструмента или превращающая его в пропуск;
  • режим P2P, посредством которого осуществляется обмен данными между двумя телефонами.

Использование чипа, который вшит в сотовый телефон, позволяет бронировать билеты, служит способом оплаты проезда или парковочного места, даёт возможность осуществлять надзорный допуск на определённую закрытую территорию. Развитие технологических процессов привело к появлению пластиковых карт, внутри которых имеется чип беспроводной связи и интегрированная антенна, что делает пластик удобным платёжным инструментом.

Одной из часто используемых функций NFC является передача информации между двумя смартфонами. При нахождении двух девайсов в непосредственной близости происходит связывание устройств под воздействием индукции магнитного поля, когда два преобразователя рамочного типа формируют образователь.

  1. Активный. В этом случае оба устройства, участвующие в сопряжении, обладают собственными источниками питания антенны, а обмен данными осуществляется в порядке очерёдности.
  2. Пассивный. Этот вариант предполагает использование мощностей только одного устройства, которое имеет источник для питания модуля. Пассивные метки обладают малым запасом памяти и чаще всего применяются только для считывания информации (пропуск, электронный билет).

Сам по себе модуль представляет маленький чип, который в сборе напоминает катушку индуктивности

Обмен информацией между устройствами

За исключением Android Beam описанные выше сценарии предполагают работу одного телефона с меткой или специализированным терминалом. Если же говорить про прямую связь аппаратов между собой, то основной вопрос здесь — совместимость. Конечно, в случае продуктов одного производителя, особенно крупного, у того есть возможность просто установить в прошивку соответствующую программу.

Учитывая, что собственная скорость NFC очень мала, для быстрой передачи файлов обычно используется Bluetooth или Wi-Fi, а NFC работает только на этапе согласования параметров подключения и установления связи. Для проверки этого сценария мы попробовали на наших устройствах несколько программ для передачи файлов с заявленной поддержкой NFC.

Send! File Transfer (NFC) в бесплатной версии позволяет обмениваться файлами фотографий, музыки и видео. Для установления связи можно использовать NFC или QR-коды. Передача осуществляется через Bluetooth или Wi-Fi (в случае, если оба устройства имеют поддержку Wi-Fi Direct, которой в использовавшемся телефоне Sony не оказалось). В итоге нам удалось увидеть скорость на уровне 65 КБ/с, что, конечно, слишком мало даже для фотографий.

Обмен данными в Send! File Transfer

Blue NFC, как понятно из названия, также упрощает обмен файлами по Bluetooth, заменяя этапы включения, поиска и сопряжения на касание с обменом информацией по NFC. Скорость работы не очень велика — на уровне упомянутой выше программы.

File Expert HD также использует Bluetooth, но скорость составляет уже 100-200 КБ/с. Правда, справедливости ради стоит заметить, что в этой программе есть и много других режимов обмена файлами.

Еще более высокую скорость показала утилита SuperBeam WiFi Direct Share. Она менее универсальна, чем File Expert HD, однако способна обеспечить соединение по Wi-Fi, даже если у устройств нет поддержки Wi-Fi Direct. А скорость передачи составила в наших тестах около 2 МБ/с, что уже очень неплохо.

Таким образом даже видеоролики в несколько десятков мегабайт можно будет перенести за разумное время. Как и ранее, NFC используется здесь только для начальной настройки соединения устройств. Поддерживается передача любых типов файлов. Утилита встраивается в стандартное меню приложений «поделиться».

Читаем ndef-сообщение

Когда телефон на Android считывает NFC-метку, он сначала её обрабатывает и распознает, а затем передаёт данные о ней в соответствующее приложение для последующего создания intent. Если с NFC может работать больше одного приложения, то появится меню выбора приложения. Система распознавания определяется тремя intent, которые перечислены в порядке важности от самой высокой до низкой:

  1. ACTION_NDEF_DISCOVERED: Этот intent используется для запуска аctivity, если в метке содержится NDEF-сообщение. Он имеет самый высокий приоритет, и система будет запускать его в первую очередь.
  2. ACTION_TECH_DISCOVERED: Если никаких activity для intent ACTION_NDEF_DISCOVERED не зарегистрировано, то система распознавания попробует запустить приложение с этим intent. Также этот intent будет сразу запущен, если найденное NDEF-сообщение не подходит под MIME-тип или URI, или метка совсем не содержит сообщения.
  3. ACTION_TAG_DISCOVERED: Этот intent будет запущен, если два предыдущих intent не сработали.

В общем случае система распознавания работает, как представлено на рисунке ниже.

Когда это возможно, запускается intent ACTION_NDEF_DISCOVERED, потому что он наиболее специфичный из трёх. Более того, с его помощью можно будет запустить ваше приложение.

Если activity запускается из-за NFC intent, то можно получить информацию с отсканированной NFC-метки из этого intent. Intent может содержать следующие дополнительные поля (зависит от типа отсканированной метки):

  • EXTRA_TAG (обязательное): объект Tag, описывающий отсканированную метку.
  • EXTRA_NDEF_MESSAGES (опциональное): Массив NDEF-сообщений, просчитанный с метки. Это дополнительное поле присуще только intent ACTION_NDEF_DISCOVERED.
  • EXTRA_ID (опциональное): Низкоуровневый идентификатор метки.

Ниже представлен пример, проверяющий intent ACTION_NDEF_DISCOVERED и получающий NDEF-сообщения из дополнительного поля.

Kotlin

override fun onNewIntent(intent: Intent) {
    super.onNewIntent(intent)
    ...
    if (NfcAdapter.ACTION_NDEF_DISCOVERED == intent.action) {
        intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES)?.also { rawMessages ->
            val messages: List = rawMessages.map { it as NdefMessage }
            // Обработка массива сообщений.
            ...
        }
    }
}

Java

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    ...
    if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(intent.getAction())) {
        Parcelable[] rawMessages =
            intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
        if (rawMessages != null) {
            NdefMessage[] messages = new NdefMessage[rawMessages.length];
            for (int i = 0; i < rawMessages.length; i  ) {
                messages[i] = (NdefMessage) rawMessages[i];
            }
            // Обработка массива сообщений.
            ...
        }
    }
}

Также объект Tag можно получить из intent, который будет содержать полезную информацию и позволит перечислить технологии метки:

Kotlin

val tag: Tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG)

Java

Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);

Чтение и запись меток

Описанный Android Beam использует возможность передачи и обработки коротких информационных сообщений. Однако в реальности их можно не только передавать с телефона, но и считывать с пассивных меток. В некотором смысле эта технология аналогична известным QR-кодам, которые считываются фотокамерой телефона.

При этом полезная информация (например, ссылка на страницу сайта) занимает буквально несколько десятков байт. Метки могут использоваться компаниями, например, для продвижения своих товаров или услуг. Учитывая компактный размер пассивной метки (точнее, сравнимую с листом бумаги толщину — из-за антенны площадь будет все-таки значительной, не менее пятирублевой монеты), она может быть размещена практически в любом месте: на коробке с товаром, в журнале, на информационной стойке и других местах.

Пассивные метки NFC могут быть изготовлены в виде брелков

Если же говорить про собственноручное изготовление меток, то и это вполне осуществимый сценарий. Для этого нужно приобрести чистые заготовки и с использованием специальной программы для телефона записать на них требуемую информацию. Для примера мы купили несколько разных вариантов: наклейку минимальной толщины, защищенный кружочек из пластика и брелки.

Все они имели совсем небольшой объем памяти — всего 144 байта (на рынке присутствуют варианты и на 4 КБ). Число циклов перезаписи указано не было, но для большинства сценариев применения этот параметр не критичен. Для работы с метками можно рекомендовать программы NXP Semiconductors — TagInfo и TagWriter.

Чтение меток в NXP Semiconductors TagInfo

Первая позволит вам считать данные с метки и расшифровать информацию по стандарту NDEF, а вторая поможет создать собственные метки. При этом поддерживаются несколько подвариантов NDEF: контакт, ссылка, текст, SMS, почтовое сообщение, телефонный номер, соединение по Bluetooth, географическое расположение, ссылка на локальный файл, запуск приложения, URI.

Обратите внимание, что при создании записи нужно учитывать объем хранимых данных. Например, фотография контакта может занимать несколько килобайт, сообщения или текст также легко могут выйти за 144 байта. Кстати, программа NFC TagInfo компании NFC Research Lab со специальным плагином может прочитать и показать вам цветную фотографию из биометрического паспорта.

Запись меток в NXP Semiconductors TagWriter

Отметим, что автоматическая обработка считанных меток зависит от контента. В частности, иногда требуются дополнительные подтверждение для осуществления самого действия. Например, в случае SMS открывается заполненная форма сообщения, но собственно отправку должен подтвердить пользователь.

А вот записанная web-ссылка может сразу открываться в браузере. Любая автоматизация связана с потерей контроля, так что и описанные возможности стоит применять осторожно, поскольку простой заменой или перепрограммированием меток злоумышленники могут перенаправить вас на подставной сайт вместо оригинального. Штатных настроек ОС для ограничения подобного автозапуска мы не обнаружили (если только не отключить сам NFC).

Еще один важный момент при использовании меток в публичных местах — защита от перезаписи. При записи метки вы можете поставить флаг защиты, который будет блокировать все попытки изменения информации, но снять его будет уже невозможно. Так что метка будет в дальнейшем использоваться в режиме «только для чтения». Для домашнего применения это в большинстве случаев не очень критично.

Упомянем еще несколько программ для записи меток:

Заключение

По состоянию на весну 2022 года можно сказать, что технология NFC уже уверенно занимает место в современных смартфонах топового и среднего уровня. Косвенно интерес к ней можно оценить по количеству программ в Play Store: одних только бесплатных проектов есть уже несколько сотен.

Учитывая доминирование на рынке (особенно по числу моделей) платформы Android, именно она является сегодня наиболее популярной для NFC-устройств. В iOS штатных средств для NFC не предусмотрено, а Windows Phone 8 имеет существенно ограниченные возможности работы с NFC для сторонних приложений.

Сама по себе технология NFC имеет несколько особенностей, позволяющих ей занять уникальное положение:

  • бесконтактная передача данных;
  • работа только на небольших расстояниях;
  • возможность обмена информацией с другими устройствами или пассивными метками;
  • низкая стоимость решения;
  • низкое энергопотребление;
  • низкая скорость передачи данных.

В настоящий момент для смартфонов и планшетов можно отметить три наиболее актуальных варианта использования NFC: обмен данными между устройствами (контакты, приложения, ссылки, фотографии и другие файлы), чтение меток со специальной информацией и изменение режимов/настроек/профилей устройства, быстрое сопряжение с периферийными устройствами (например, гарнитурами).

В первом случае можно попробовать работать со стандартной программой Android Beam или установить альтернативные варианты. Они могут быть полезны при необходимости высокой скорости обмена (по Wi-Fi), но требуют наличия одинаковой программы на каждом устройстве.

Пассивные метки могут использоваться практически везде — от плакатов до журналов и бирок на товарах. В них можно записать информацию о продукте, ссылку на сайт, настройки Wi-Fi, контактные данные, географические координаты или другой небольшой объем данных.

Распространение такого способа обмена информацией напрямую зависит от числа совместимых устройств у пользователей. Этот сценарий можно сравнить с распространенными кодами QR, которые сегодня, пожалуй, все-таки проще с точки зрения реализации и более популярны.

Для изменения системных настроек можно использовать с некоторыми программами даже метки без возможности записи, так что попробовать в деле такой сценарий смогут многие пользователи. Правда, надо отметить, что в таком случае набор опций будет записан в конкретном устройстве, и с переносом его на другой аппарат могут быть сложности.

Большинство утилит подобного назначения все-таки требуют собственных записанных меток, что позволяет им хранить всю требуемую информацию в закодированном виде непосредственно в метке (или облаке), так что для использования данных настроек на другом аппарате достаточно будет иметь на нем такую же программу.

Мы не рассматривали в этой статье такие сценарии использования NFC, как платежные системы, электронные кошельки и микроплатежи, билеты и купоны, транспортные карты и пропуска. Эти темы, особенно первая, заслуживают отдельного рассмотрения. Мы постараемся вернуться к ним при наличии читательского интереса и распространении подобных решений.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *