Flipper Zero читает iButton-ключи через встроенные контакты на торце корпуса, но у этого способа есть ограничение: таблетку нужно плотно прижать к двум площадкам, что неудобно с ключами на кольце или в нестандартных держателях. Внешний iButton-ридер, подключённый к GPIO-пинам, решает эту проблему — контакт получается надёжнее, а ключ можно просто приложить к зонду, как к обычному домофонному считывателю.
В этой статье разберём, как собрать внешний считыватель iButton для Flipper Zero, какие пины задействовать, как читать, эмулировать и записывать ключи, а также какие ошибки встречаются чаще всего.
Что такое iButton и зачем нужен внешний ридер
iButton — это семейство электронных ключей в формате «таблетки», работающих по протоколу 1-Wire от Dallas Semiconductor (ныне Maxim Integrated). Самый распространённый тип — DS1990A, который при касании передаёт уникальный 48-битный серийный номер. Именно такие ключи используются в домофонах, СКУД и системах доступа.
У Flipper Zero есть встроенные контакты iButton на торце корпуса, и для большинства задач их достаточно. Однако внешнее подключение даёт несколько преимуществ:
- 🔌 Удобный зонд-держатель — ключ фиксируется в гнезде, а не прижимается рукой к плоским площадкам.
- 📏 Возможность вынести считыватель на проводе — полезно при работе с ключами в труднодоступных местах.
- 🛠️ Стабильный контакт при записи болванок — меньше сбоев из-за дрожания руки.
- 🧲 Некоторые держатели имеют пружинный механизм, который сам прижимает таблетку.
Важно понимать: внешний ридер не добавляет новых функций — он лишь дублирует встроенный интерфейс через GPIO, делая работу удобнее.
Схема подключения внешнего iButton к GPIO
Протокол 1-Wire требует всего двух линий: данных и земли. На Flipper Zero для iButton используется пин GPIO 17 (1W) — это выделенный контакт, к которому внутри уже подключён подтягивающий резистор. Земля берётся с любого пина GND на гребёнке.
Схема подключения внешнего считывателя:
- 🔵 Центральный контакт держателя таблетки (данные) → пин 17 (1W).
- ⚫ Внешний ободок держателя (земля) → пин GND (например, пин 8 или 11).
- 🚫 Никакого дополнительного питания не требуется — ключ пассивный.
В качестве держателя подойдёт стандартный считыватель-зонд для домофонных ключей (продаётся как «считыватель DS1990» или «контактор для Touch Memory»), а также панелька с пружинными контактами. Провода желательно использовать короткие — до 15–20 см, иначе возможны сбои чтения из-за ёмкости линии.
💡Если под рукой нет готового держателя, можно аккуратно прижать два провода с Dupont-коннекторами к центру и ободку таблетки — для разового чтения этого достаточно.