Декодировать шестнадцатеричные значения метки RFID в десятичный серийный номер - PullRequest
0 голосов
/ 17 января 2020

У меня около 10k + устройств, каждое с видимым серийным номером, напечатанным на этикетке, и RFID tag, с которого также можно прочитать серийный номер. Моя проблема в том, что когда я читаю метку RFID, я получаю кучу шестнадцатеричных значений и не могу получить из них фактическое значение серийного номера, поскольку оно не является прямым десятичным или шестнадцатеричным кодированием.

Вот несколько сведений, которые я получаю при сканировании RFID tag с помощью Android App "NF C Tools":
- Тип тега : ISO 15693 NXP - ICODE SLIX
- Доступные технологии : NfcV, Ndef
- Серийный номер : 3C:FB:88:14:50:01:04:E0
- DSFID : 0x00
- Формат данных : Unknown
- Размер : 38 / 106 Bytes
- Запись : Yes
- Может быть сделано только для чтения : No

Я заметил, что каждый RFID tag содержит один и тот же «заголовок» 50:01:04:E0, так что это означает, что должен существовать способ получения моего серийный номер от 3C:FB:88:14. В данном конкретном случае серийный номер 11926214.

Я отсканировал около 30 единиц вручную, но мне не хотелось бы сканировать все 10000, так как это может привести к ошибкам при записи шестнадцатеричных значений и соответствующих серийных номеров. Можно ли вообще с вышеуказанной информацией это выяснить?

1 Ответ

1 голос
/ 17 января 2020

Раздел 9.2.1 таблицы данных для микросхемы может помочь https://www.nxp.com/docs/en/data-sheet/SL2S2002_SL2S2102.pdf

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

Это фактически ставит 3C:FB:88:14:50 в качестве IC manufacturer serial number или 50:14:88:FB:3C в соответствии с определением производителя.

Я пробовал различные преобразования из шестнадцатеричного в десятичное, например https://www.rapidtables.com/convert/number/hex-to-decimal.html и не может получить какую-либо комбинацию и значительную битовую ориентацию для преобразования в серийный номер устройства.

Эти чипы также имеют пользовательскую память, которую приложение не считывало, и серийный номер устройства мог храниться здесь и не иметь отношения к серийному номеру бирки. (Поскольку серийный RFID программируется NXP во время изготовления, маловероятно, что он также будет серийным номером устройства)

Я предлагаю на самом деле использовать приложение TagInfo от NXP, как это делают производители микросхем и может показать вам все необработанные блоки памяти (это может на используемой мной карте типа)

НО кажется, что NXP удалили приложение TagInfo совсем недавно: - (

Обновление: Кажется, вы можете загрузить APK с https://apkpure.com/nfc-taginfo-by-nxp/com.nxp.taginfolite (с соответствующими рисками)

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

...