Дубликатор ключей RW1990 перестал записывать заготовки или вы собираете устройство с нуля — в обоих случаях всё начинается с понимания схемы: считыватель работает по однопроводному протоколу 1-Wire, а вся логика сводится к чтению 64-битного кода ключа и его записи в перезаписываемую заготовку. Ниже разберём принципиальную схему, вариант сборки на Arduino и типовые ошибки, из-за которых копия не открывает домофон.

Заготовка RW1990 — это эмулятор классического ключа Dallas DS1990A: внутри корпуса формата iButton находится микросхема, способная принять и хранить произвольный код. Именно поэтому схема дубликатора одинакова и для чтения, и для записи — меняется только программная часть.

Принцип работы ключа RW1990 и протокола 1-Wire

Ключ подключается к считывателю всего двумя контактами: DATA (сигнальная линия) и GND (корпус). Питание микросхема получает паразитным способом — от той же линии данных через подтягивающий резистор. Когда ключ касается контактора, мастер шины отправляет импульс сброса, ключ отвечает импульсом присутствия, после чего передаёт свой 64-битный код.

Структура кода стандартна для семейства Dallas: первый байт — код семейства (для DS1990A это 0x01), затем шесть байт уникального номера и последний байт — контрольная сумма CRC8. Дубликатор должен корректно прочитать все восемь байт и записать их в заготовку, иначе домофон отвергнет копию.

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

💡

RW1990 — перезаписываемый аналог DS1990A: схема подключения двухпроводная (DATA + GND), вся сложность дубликатора заключается в программной реализации протокола 1-Wire и команд записи.