V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
lovelyelfpop
V2EX  ›  分享创造

自制 AirTag,支持安卓/鸿蒙/PC/Home Assistant,无需拥有 iPhone

  •  
  •   lovelyelfpop · 4 小时 11 分钟前 · 1490 次点击

    在这里插入图片描述 苹果的 AirTag 很贵,虽然某强北有平价代替品,但是仍需要苹果设备才能绑定,才能查看位置。不支持安卓/鸿蒙/PC ,也不支持集成到 Home Assistant 中。

    AirTag 的原理

    每个 AirTag 都会发送一个蓝牙信号,其可以被临近的苹果设备( iPhone 、iPad 、MAC 等)检测到,这些苹果设备会将这些 AirTag 的位置上报到苹果服务器。这个网络就是 Find My 网络。

    国外有人逆向了 AirTag 机制 (github 项目 seemoo-lab/openhaystack) 可以让一些蓝牙设备,比如 ESP32 、树莓派、甚至带蓝牙适配器的 Linux ,模拟发出 FindMy 蓝牙广播。

    这样制作出的定位标签,不需要苹果手机绑定,支持安卓/鸿蒙/PC/Home Assistant 查看标签的位置。

    制作教程

    我在 gitee 上建了一个项目 https://gitee.com/lovelyelfpop/macless-haystack 整合了 github 上一些内容,并做了如下一些事情: 1 、中文翻译 主要翻译的 github 项目 dchristl/macless-haystack 2 、安卓 app 适配国情 界面汉化,并替换为高德地图和定位 3 、硬件准备和刷机方法详细说明 4 、Home Assistant 集成说明

    支持 安卓(有app),iOS/鸿蒙/PC等其他系统(用浏览器访问web 网站) 查看定位标签的位置(下面有截图)。 注意:虽然查看标签的位置不需要苹果手机,但是部署服务时需要有 AppleID 账号(需要在苹果手机上注册,可以找朋友借用注册一个。苹果网站上注册的不行)。 另外,标签上报位置仍然依赖苹果的 FindMy 网络,要求标签附近有苹果设备,因此,人少的地方比如农村不适合使用 AirTag/华强北平替/自己制作的定位标签。

    下面是我制作的一些成品定位标签 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

    安卓 App 界面

    在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

    Web 网站界面

    在这里插入图片描述 在这里插入图片描述

    Home Assistant 集成截图

    在这里插入图片描述 在这里插入图片描述

    28 条回复    2025-02-24 16:44:20 +08:00
    w568w
        1
    w568w  
       3 小时 57 分钟前
    非常强的折腾,如果有 GitHub 项目我就 star 了
    musi
        2
    musi  
       3 小时 56 分钟前
    @w568w 原文中有提到原项目是 http://github.com/dchristl/macless-haystack
    coolfan
        3
    coolfan  
       3 小时 51 分钟前
    有意思
    killeder
        4
    killeder  
       3 小时 33 分钟前 via Android
    有 uwb 吗
    dozer47528
        5
    dozer47528  
       3 小时 32 分钟前
    既然是私有网络,那就不能利用别人手机上报定位了是吗?
    AlexShui
        6
    AlexShui  
       3 小时 31 分钟前
    🐂🍺我也很愿意给 OP 提供一个 GitHub 的⭐(如果有)
    lisxour
        7
    lisxour  
       3 小时 30 分钟前
    这么强的项目,华强北居然没出全平台的高仿?
    Felldeadbird
        8
    Felldeadbird  
       3 小时 28 分钟前
    卧槽!楼主这是打开了新商业模式啊。
    支持楼主的开源。
    h4de5
        9
    h4de5  
       3 小时 25 分钟前
    不错,支持一下。
    cat
        10
    cat  
       3 小时 21 分钟前
    好家伙,坐在产业园区 突然看到月亮湾的地图…
    coolloves
        11
    coolloves  
       3 小时 20 分钟前
    之前在淘宝上搜了下宠物定位器,貌似就是利用这个,请问下,自制的话,成本几何?
    macaodoll
        12
    macaodoll  
       3 小时 19 分钟前
    牛逼 6666
    lovelyelfpop
        13
    lovelyelfpop  
    OP
       3 小时 9 分钟前
    @killeder 没有 UWB 。华强北平替也没有
    lovelyelfpop
        14
    lovelyelfpop  
    OP
       3 小时 8 分钟前
    @dozer47528 私有后台是给 app 查看位置用的。tag 利用附近苹果手机上传位置,这个还是一样的
    lovelyelfpop
        15
    lovelyelfpop  
    OP
       3 小时 5 分钟前
    @coolloves 要准备一些工具,电烙铁 编程器啥的。材料成本看你购买的来源。你也可以画板子批量生产
    whathappen
        16
    whathappen  
       2 小时 49 分钟前
    @lovelyelfpop

    #14

    那我直接买原装或者华强北的 Airtag,是否可以用安卓查看它们的定位? 还是只可以查看“自制”的那些?

    安装了这个软件的安卓设备会不会参与分享定位的角式?还是只是纯观看的角式?
    lovelyelfpop
        17
    lovelyelfpop  
    OP
       2 小时 36 分钟前
    @whathappen app 不支持华强北的平替。安卓手机不参与上报 tag 的位置,安卓 app 只用来查看位置
    LightofHeven
        18
    LightofHeven  
       2 小时 30 分钟前
    op 动手能力真刚
    huguadao
        19
    huguadao  
       2 小时 26 分钟前
    这,适合整个新的品牌,作为小孩定位器,众筹一轮
    weijancc
        20
    weijancc  
       2 小时 22 分钟前
    挺好的, 就是放 gitee 显得 low
    ZhLTE
        21
    ZhLTE  
       2 小时 14 分钟前
    @huguadao 不得被苹果告死吗
    imyip
        22
    imyip  
       2 小时 13 分钟前
    关键是 黄鱼搜蓝牙信标 可以买到很便宜的 nrf51822
    xuromky
        23
    xuromky  
       2 小时 9 分钟前
    成品多少钱一个,我要买
    huguadao
        24
    huguadao  
       2 小时 8 分钟前
    @ZhLTE 平多多一搜一大把的东西,原理不重要,关键就是要品牌要好玩😄
    undefinedsymbol
        25
    undefinedsymbol  
       2 小时 0 分钟前
    不错不错,star 来一个
    koast
        26
    koast  
       1 小时 59 分钟前
    主要问题是首次绑定生成的那个密钥不好导出,导出之后应该是和那华强北平替一样用的吧。毕竟 airtag 是绑定在账号上的,那个协商的密钥肯定也是可以从苹果服务器登陆账号获取的吧,不然新设备登录老账号都要重新绑定一遍 airtag 并且导致老设备的绑定失效听起来挺离谱的。 @lovelyelfpop @whathappen
    koast
        27
    koast  
       1 小时 53 分钟前
    苹果设计的这个协议很那啥的点在于信标的 mac 地址也是轮换密钥的一部分(和 generate_key.py 生成的那个主密钥不一样),导致要蹭它这个网络,必须得支持更改 mac 地址可以,这就使一些有意思的应用场景用不了。比如给安卓机写一个内核模块加载上,让它定时更改下蓝牙地址发下广播帧之类的。
    lovelyelfpop
        28
    lovelyelfpop  
    OP
       1 小时 46 分钟前
    @xuromky 我黄鱼有上架几个自己做的,搜索“自制定位标签”
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3798 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 10:30 · PVG 18:30 · LAX 02:30 · JFK 05:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.