Личный блог с мыслями и наблюдениями

Эмуляция Apple Airtag при помощи nRF51822 iBeacon

Apple выпустила в продажу новый продукт — AirTag, но в России он пока не продается, да и цена в 2990 руб. для радиометки достаточно высокая.

К счастью, в этот раз Apple выпустила продукт, аналоги которого могут создавать и другие производители.

У меня завалялся свободный nRF51822 iBeacon, стоимостью 250 руб., на который оказалось возможным залить совместимую с Apple Airtag прошивку.

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

Вам понадобится адаптер STLink v2 или аналог, а также сами метки nRF51822 iBeacon.

Для начала, нужно припаять 4 провода к метке и подключить их к STLink v2:

распиновка nRF51822 iBeacon

Далее, скачайте последнюю версию OpenHaystack, создайте новый аксессуар (New accessory), нажмите Deploy и экспортируйте “Export Microbit firmware”, сохраните прошивку в Загрузки (Downloads).

     

Теперь необходимо установить ПО для прошивки

brew install open-ocd
brew install terminal

     

Подключите STLink к компьютеру.

Откройте два окна терминала, в первом введите:

openocd -f /usr/local/share/openocd/scripts/interface/stlink-v2.cfg -f /usr/local/share/openocd/scripts/target/nrf51.cfg

     

При этом если STLink и метка рабочие, а также вы правильно припаяли и подключили, то ошибок быть не должно.

     

Во втором терминале можно подключиться к метке:

telnet localhost 4444

     

Далее в этом же терминале отправьте, чтобы выключить метку:

halt

     

Опционально, можно сделать бэкап текущей прошивки:

dump_image ~/Downloads/nRF51822-backup.bin 0 0x40000

     

Сотрите текущую прошивку (можно будет вернуть старую, если сделали бэкап на предыдущем шаге):

nrf51 mass_erase

     

Проверьте (не обязательно) новую прошивку (указав путь до файла, который сохраняли на первых шагах):

program ~/Downloads/openhaystack_firmware.bin verify

     

Загрузите прошивку в метку:

program /Your/Firmware/File/Path/openhaystack_firmware.bin

     

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

resume

     

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

03.05.2021   техническое   apple   airtag