Если ты печатаешь на 3D-принтере, ситуация наверняка знакома: полка забита начатыми катушками, сколько на какой осталось филамента, непонятно, а вон та без подписи может быть PETG, а может PLA, и без пробной печати не разберёшься. Я тоже через это проходил, и это как раз та мелкая повторяющаяся досада, которую NFC решает по-настоящему хорошо.
Этим и занимается OpenPrintTag. Это открытый стандарт NFC от Prusa Research, который превращает любую подходящую NFC-метку в умную наклейку для катушки. Тип материала, марка, цвет, остаток веса: всё хранится прямо на катушке и читается быстрым касанием телефона.
Ни облака, ни закрытой экосистемы, ни интернета. Я много лет делаю NFC.cool, приложение для чтения и записи NFC-меток, и это ровно тот тип стандарта, который мне нравится: данные лежат на метке, и поэтому она работает где угодно. Дальше о том, как всё устроено и как я читаю и записываю катушки OpenPrintTag, имея при себе только телефон.
Что такое OpenPrintTag
OpenPrintTag задаёт универсальный открытый формат данных для материалов 3D-печати. Вместо того чтобы каждый производитель изобретал свою несовместимую систему умных катушек, а такую кашу я не раз наблюдал в других уголках мира NFC, OpenPrintTag задаёт единый стандарт, который может взять кто угодно: производители филамента, производители принтеров, слайсеры и приложения вроде NFC.cool.
Ключевые принципы, из-за которых на него, по-моему, стоит обратить внимание:
Открытый исходный код: опубликован под лицензией MIT, внедряется свободно, никаких лицензионных платежей
Работа без сети по замыслу: все данные лежат на самой метке, облачный сервис не нужен
Перезаписываемость: обновляй остаток филамента по ходу печати, используй метки повторно на новых катушках
Универсальность: работает поверх марок и экосистем
Поддержка и FFF (филамент), и SLA (смола)
Интерес к нему выразили больше 22 компаний и сообществ, среди них Prusament, Voron, Fillamentum, 3DXTech, SimplyPrint и PrintedSolid. Полная спецификация лежит на specs.openprinttag.org.
Какие данные хранит метка OpenPrintTag
Вот эта часть меня и подкупила. OpenPrintTag это не просто наклейка с названием. Это нормально структурированный формат данных с полями почти под всё, что хочется знать о катушке, и спецификацию явно писали люди, которые сами печатают.
Что за материал:
Класс материала (филамент или смола)
Тип материала (PLA, PETG, ABS, TPU, ASA, PC, PA6 и ещё три десятка)
Название материала (например, «PLA Galaxy Black»)
Марка (например, «Prusament»)
Метки свойств материала: больше 68 описанных свойств вроде абразивности, электропроводности, свечения в темноте, пищевой безопасности, антистатичности, гибкости и других
Учёт веса и длины:
Номинальный вес (заявленный, например 1000 г)
Фактический вес (измеренный для конкретной катушки)
Длина филамента (номинальная и фактическая, в миллиметрах)
Вес пустой катушки (чтобы взвесить её и посчитать остаток материала)
Израсходованный вес (обновляется по ходу печати, и именно это поле делает катушку по-настоящему умной)
Цвет:
Основной цвет в формате RGBA
До пяти дополнительных цветов (для многоцветных, «галактических» и градиентных филаментов)
Расстояние светопропускания (значение непрозрачности, полезное для проектов на HueForge)
Служебные данные:
Дата производства и дата истечения срока
Страна происхождения
Идентификаторы UUID для марки, материала и конкретной катушки
Настройки защиты от записи
В спецификации есть даже поля под смолу, например last_stir_time, куда записывается, когда смолу в последний раз перемешивали перед печатью. Такая деталь говорит мне, что авторы сами обжигались на неразмешанной смоле.
Метка: это не обычная NFC-наклейка
Технический момент, о котором я предупредил бы до покупки: OpenPrintTag рассчитан на метки ISO 15693 (NFC-V), а именно на чипы NXP ICODE SLIX и ICODE SLIX2. Это метки пятого типа по NFC Forum с заметно большей дальностью чтения, чем у обычных меток NFC-A, вплоть до полутора метров со специальным считывателем. Если ты до сих пор покупал только дешёвые наклейки NTAG, которые используют в большинстве проектов, то это другое семейство меток, а полную картину я разбирал в тексте про типы NFC-меток для iPhone.
Почему именно NFC-V? Встроенному считывателю принтера нужно замечать катушку независимо от того, как она повёрнута. Большая дальность NFC-V позволяет обойтись без точного совмещения с меткой, и это разумное инженерное решение.
А что с обычными наклейками NTAG? Формат данных OpenPrintTag построен на NDEF, поэтому приложение на телефоне вроде NFC.cool технически прочитает и запишет данные OpenPrintTag на любую NFC-метку, включая NTAG213, NTAG215 и NTAG216. Я так делал, и для чтения с телефона всё работает нормально. Но железо принтеров и приложения вроде прусовского понимают только метки NFC-V. Так что если хочется, чтобы размеченные катушки работали со встроенными считывателями принтеров, бери метки ICODE SLIX2. Не совершай ошибку, которую, подозреваю, сделает большинство, и не покупай для этого пакет NTAG213.
Если берёшь чистые метки, ищи именно ICODE SLIX2 или ISO 15693. Подходящие есть на Amazon в США и на Amazon в Европе (партнёрские ссылки).
Как читать и записывать OpenPrintTag с телефона
Чтобы работать с OpenPrintTag, принтер Prusa и особое железо не нужны, хватит телефона. Именно эту часть мне больше всего хотелось сделать, потому что телефон в кармане это самый доступный NFC-считыватель на свете.
NFC.cool Tools поддерживает OpenPrintTag нативно и на iOS, и на Android, и я позаботился о том, чтобы функция была полностью бесплатной.
Чтение метки:
Открой NFC.cool Tools
Поднеси телефон к NFC-метке на катушке
NFC.cool сам определит формат OpenPrintTag
Смотри структурированные данные: материал, марку, цвет, вес, длину, свойства
Запись метки:
Наклей на катушку чистую метку ICODE SLIX2
Открой NFC.cool → раздел NFC Apps → OpenPrintTag
Заполни данные материала: тип, марку, цвет, вес, длину
Поднеси телефон и запиши
Обновление остатка материала: После печати обнови на метке поле израсходованного веса. При следующем считывании ты точно будешь знать, сколько филамента осталось, без догадок и взвешивания. Именно это превращает умную катушку из забавы в то, на что я реально полагаюсь.
Если хочется заглянуть под капот, экспертный режим покажет сырые записи NDEF: полезно, когда надо отладить метку или проверить структуру данных. Никогда раньше не записывал метки? Основы я разбирал в тексте «Как записывать NFC-метки на iPhone».
Зачем для этого телефон
В принтеры Prusa встраивают считыватели NFC, а проекты вроде SpoolSense, открытого считывателя на ESP32, добавляют отдельные аппаратные варианты. Зачем тогда телефон? Вот мои доводы:
Работает с любым принтером: Voron, Bambu Lab, Creality, Ender, чем бы ты ни печатал
Размечай любой филамент: Prusament приезжает уже с метками, а Fillamentum, eSUN, Hatchbox или что угодно другое можно разметить самому
Веди учёт вдали от принтера: считывай катушки за столом, на складе или в мастерской
Отлаживай метки: когда принтер не может прочитать метку, считай её телефоном и посмотри, что на ней на самом деле, и вот к этому я обращаюсь чаще всего
Не нужно лишнее железо: считыватель NFC у тебя в телефоне уже есть, в этом и смысл
Практические сценарии
Личный учёт. Размечай каждую катушку в коллекции. Планируя печать, считывай их и смотри тип материала, остаток длины и цвет, ничего не распаковывая.
Учёт остатка филамента. Взвесь катушку до и после печати и обнови израсходованный вес на метке. Больше никаких переживаний в духе «хватит ли этой катушки на четырнадцать часов печати».
Мастерская или команда. Размечай катушки данными материала, чтобы любой в мастерской мог считать и понять, что это. Никакого филамента-загадки.
Заметки по настройке. Нашёл идеальную температуру для конкретной катушки? Впиши свои заметки в метку, пригодится в следующий раз.
Многоцветные и особые материалы. OpenPrintTag поддерживает до шести цветов на катушку и больше 68 меток свойств. Твой светящийся в темноте PETG с углеволокном наконец получит нормальную подпись, вместе с отметкой об абразивности.
Экосистема растёт
OpenPrintTag ещё молод, но движение настоящее:
Prusament приезжает с метками OpenPrintTag на каждой катушке
Принтеры Prusa получают встроенные считыватели NFC
Открытые аппаратные считыватели вроде SpoolSense на ESP32 появляются в сообществе
Больше 22 компаний присоединились к инициативе
NFC.cool остаётся единственным универсальным NFC-приложением с полной поддержкой OpenPrintTag и на iOS, и на Android, и я добавил её, потому что хотел пользоваться ей сам
Я много лет наблюдал, как индустрии 3D-печати не хватает открытого стандарта для умных катушек, и видел, как пара закрытых попыток приходила и уходила. OpenPrintTag выглядит самой убедительной из тех, что я встречал: за ним стоит крупный производитель, он полностью открыт и уже приезжает на реальных товарах. Такое сочетание встречается достаточно редко, чтобы на него поставить.
С чего начать
Что понадобится:
iPhone 7 или новее либо телефон на Android с NFC
NFC.cool Tools (App Store или Google Play), бесплатно, OpenPrintTag включён
Чистые NFC-метки ICODE SLIX2 или ISO 15693 (Amazon в США или Amazon в Европе, партнёрские ссылки)
Несколько катушек, которые хочется разметить
И всё. Через пять минут первая катушка станет умной. Если сам NFC для тебя в новинку, я бы сначала отправил тебя в руководство по NFC-меткам для начинающих, а на странице чтения и записи NFC описано, что ещё NFC.cool Tools умеет кроме OpenPrintTag.
OpenPrintTag развивается как открытая инициатива Prusa Research. NFC.cool поддерживает стандарт как независимый участник. Подробности на openprinttag.org.