使用零号翻转器驯服iButton键188金宝搏亚洲体育app下载

使用零号翻转器驯服iButton键188金宝搏亚洲体育app下载

iButton是装在硬币形状的金属容器里的电子识别钥匙的总称。它也被称为达拉斯触摸记忆或接触记忆。尽管它经常被错误地称为“磁性”钥匙,但它里面并没有磁性。事实上,里面隐藏着一个基于数字协议操作的成熟微芯片。

在这篇文章中,我们研究用可以在他们翻转零的帮助下进行的窍门的iButton钥匙从物理学协议的配置。188金宝搏亚洲体育app下载

iButton是什么?

iButton键:外壳中央的数据+触点由塑料绝缘层包围,外部为GND触点

通常,iButton暗示钥匙和读卡器的物理形式——一个有两个触点的圆形硬币。对于它周围的框架,有很多变化,从最常见的带孔塑料支架到环、吊坠等。

iButton的内部结构:金属外壳内的微芯片

读者

当钥匙到达阅读器时,联系人就会开始接触,钥匙就会被激活以传送其ID。有时不能立即读取键,因为对讲机的接触PSD比它应该的大。因此,钥匙的外部轮廓和读者无法触摸。如果是这种情况,你就必须在阅读器的墙上按下按键。

iButton按键触点触摸对讲机读卡器

iButton硬币的形状不仅用于带有ID的普通密钥,还用于气候传感器、内置电池、时钟和其他酷东西的加密密钥存储设备。尽管外观与普通按键相同,但这些设备可以是完全不同的。

iButton如何在Flipper Zer188金宝搏亚洲体育app下载o中工作

为Flipper Zero开发iButton垫是一次痛188金宝搏亚洲体育app下载苦的经历。主要问题是市场上没有用于同时读取和模拟的PAD。如果我们使用任何一种现有的解决方案,一个巨大的金属按钮就会从脚蹼上伸出,旁边还有一个同样巨大的阅读区域。这将极大地增加设备的尺寸。

因此,我们不得不从头开始发明我们自己的垫设计,这样就可以在PCB上实现,而不增加Flipper的尺寸。最后,我们决定使用3个弹簧弹簧弹簧夹。188金宝搏欢迎你大约20种不同的设计被测试,直到找到正确的。

iButton pad在Flipper Zero的原型,这是我们在188金宝搏亚洲体育app下载开发期间3D打印的

设计接触垫的最大困难是模拟:当鳍片本身作为一个关键,必须应用于对讲机。每个制造商都有自己的读卡器形式,所以总是有与设计不兼容的对讲机:引脚根本不能到达中心Data +接触或侧面GND接触。

垫的左侧用于读取和复制键,右边一个服务于仿真。中心GND引脚为两种模式共同

最终的iButton键盘设计成功读取了100%的按键。大约80%的读者成功地使用了仿真。在剩下的20%的读卡器中,需要一些时间才能正确地联系到读卡器联系人。在这些罕见的情况下,您可以使用外部GPIO引脚,iButton引脚就是从中引出的:连接试验板导线并将其插入读卡器。

读取模式

在读模式下翻转正在等待iButton的关键接触和能够消化任何三类键的:达拉斯,Cyfral和Metakom。翻转将计算出密钥本身的类型。密钥协议的名称将上述的ID号在屏幕上显示。

读取达拉斯密钥并将其保存到SD卡

要读取该键,请转到iButton -> read菜单并将其带到接触板。现在可以立即模拟密钥,复制到内存,或保存到SD卡。尽管触控板位于屏幕的另一侧,但您可以迅速掌握阅读按键的窍门,而无需转动Flipper。

iButton读取模式使用右侧的两个Flipper零引脚188金宝搏亚洲体育app下载

iButton的仿真模式

在仿真模式中,翻转器本身作为一个键,从存储器模拟在iButton。用于仿真的ID可翻转零添加在两个方面:188金宝搏亚洲体育app下载

  • 读取现有钥匙-将钥匙ID保存到SD卡,以便随时选择所需钥匙。
  • 手动输入钥匙的ID-即使您身上没有钥匙,只要其ID已知,您也可以手动输入。例如,您可以拍摄密钥ID的照片并将其发送给拥有Flipper的朋友,而无需发送物理密钥本身。

要启动仿真,请转到iButton->Saved菜单,选择所需的键并运行仿真。屏幕上将显示带有钥匙ID的文字。之后,你可以把Flipper带给读者。重要的是要记住,此模式在Flipper的焊盘上使用不同的引脚。

在仿真模式下,Flipper传输特定ID并仅仿真一个预定义的密钥协议,因此它只能用于知道该密钥的对讲机。在这种模式下,不可能一次迭代多个键,因为不可能确定对讲机是否读取了我们的键,也不可能知道对讲机在读取错误之间的延迟。因此,对于家庭、办公室、夏季住宅、地下室,您每次都需要从菜单中选择相应的键。

在iButton的关键仿真模式,翻转必须受到像一键对讲。在这种情况下,你需要确保两个触点触摸了读者的接触垫。

通过外部GPIO的iButton


背面的iButton触点在GPIO嵌套中有另一条路由。当连接到非标准的读取器、键、任何在1-Wire协议上操作的设备(如传感器)时,这是很有用的。我们用这些引脚通过示波器分析信号。同时,这个引脚并不完全是简单的GPIO。它有一个5V的上拉。

iButton引脚连接到GPIO嵌套。iButton端口在开漏模式下工作,通过一个1kohm电阻向上拉至5V

1-Wire协议

单线协议总是有一个主设备和一个从设备。

Dallas密钥使用单线协议交换数据。只有一个触点用于从主设备到从设备的双向数据传输(!!),反之亦然。单线协议根据主从模式工作。在这种拓扑结构中,主设备总是启动通信,而从设备则遵循其指令。

当钥匙(从)与对讲机(主)接触时,钥匙内部的芯片打开,由对讲机供电,并初始化钥匙。之后,对讲机请求密钥ID。接下来,我们将更详细地查看这个过程。

Flipper可以在主模式和从模式下工作。在关键阅读模式中,Flipper作为一个读者,也就是说它作为一个大师。在密钥仿真模式下,flipper假装是密钥,处于从属模式。

当读取密钥,翻转器充当主,并与内部通信仿真时,它可以作为一个从属

达拉斯关键数据格式

对讲机从iButton接收8字节(64位)的信息来决定是否开门。

这8个字节的数据结构如下:

  • 1字节-系列代码,对于iButton,它始终为0x01
  • 6字节-钥匙的序列号
  • 1个字节 - CRC校验

达拉斯键家庭代码始终是0×01。如果你的代码是不同的,那么很可能它不是对讲机的关键。

在某些情况下,该序列号是刻在关键,但它可以:

  • 包含并非所有的8个字节
  • 有书面落后所需的序列
  • 没有明确的起点
最初的iButton钥匙上刻有一个ID,但其格式与Flipper的表示略有不同:首先是家族代码,然后是反向序列号,然后是校验和

上面的图片包含了一个不明显的例子,在原始的iButton键上雕刻一个ID。在这种情况下,您需要从右到左读取字节,校验和写在左边,家庭代码放在右边。

读取错误

如果键读错误,Flipper Zero报告错误。188金宝搏亚洲体育app下载可能的错误是:

  • 无效校验和-CRC错误
  • 错误的家庭代码-如果家庭代码与0x01不同,Flipper发誓它不是一个iButton键。
可能的错误读取达拉斯键:错误的CRC字节- CRC错误;Family-code字节不等于0x01 -这不是一个键

输入ID手动

已知密钥ID后,可以手动将其输入Flipper。当物理钥匙不在你身边时,这很方便。例如,您可以简单地在消息中发送必要的字节或与朋友分享一张照片。下面的视频展示了创建一个新的2字节Cyfral密钥的过程。生成的密钥保存到SD卡中。

通过手动输入ID创建一个新密钥

创建密钥时,需要选择其类型:Dallas、Cyfral或Metacom。ID的长度和用于仿真的协议取决于此。输入ID后,Flipper将提供为新密钥输入名称或使用生成的名称。

写1-Wire Dallas Keys

达拉斯键可以写,也可以不写。流行的可重写iButton空格:RW1990, TM2004, TM01C。录音过程有一些细微差别,所以让我们来分析一下。

写入空钥匙可能需要更高的电压-例如,并不特别流行的RW2000需要8 V的电压(虽然这是Cyfral,但含义很清楚)。

一些键可能需要敲定- 最后确定后,关键不能再被改写。使用这种方法相当多的对讲机尝试阅读,以避免假密钥之前覆盖的关键。通常情况下,电压脉冲和一个特殊的命令被用于最终确定,其可用于不同的密钥不同。

一些空白可以适合所有类型的键:达拉斯/ Cyfral / Metakom。脚蹼教记录最受欢迎的人。

用flippper Zero把达拉斯钥匙烧到RW1990的空白188金宝搏亚洲体育app下载

要将密钥ID写入“空白”,请从iButton->Saved->key_name菜单中选择所需的密钥,然后选择写入项。接下来,将可重写键按在接触垫上。写入完成后,Flipper将检查录制并显示一条关于成功写入ID的消息。188金宝搏欢迎你

土生土长的俄语键:Cyfral和Metakom

Metakom和Cyfral协议是在俄罗斯开发的,只在前苏联国家广泛传播。与达拉斯钥匙不同的是,它们使用的不是电压,而是电流。这些钥匙不太常见,也更贵。它们对键的参数(频率、电流强度、信号幅度等)非常敏感,复制它们可能是一个棘手的过程。Cyfral和Metakom不接受任何命令。当对密钥施加能量时,由于电阻的变化,它立即开始无休止地发送ID。因此,逻辑电平是由开关的电阻决定的。根据他们的文档,传统上假定代码的信息字是从最低有效位开始给出的。

Cyfral

在Cyfral和Dallas中,逻辑级别都有时间限制:如果阻力保持在50µs左右,这是逻辑上的“0”,100µs代表逻辑上的“1”。188金宝搏欢迎你

传输的数据格式非常具体。

Cyfral发送9个半字节(半字节1 = 4位)循环:1的开始和8的ID。半字节可以具有总的ID 4个值和起始字一个值。其他所有可能的输入是无效的。

一点一点地咬 价值
1110 0
1101 1.
1011 2.
0111 3.
0001 开始的话

因此,ID包含在2个字节中(总共8个字节的ID。4个字节=16个状态=1个字节的信息)。

它可能会发生Cyfral对讲机正在提交不正确的数据,而检查的关键。Cyfral没有校验。如果你想确保ID的完整性,请再次阅读的关键,并再次多次,你想要的。由于信号是模拟的,它需要被读取的ADC或比较器。这里,最简单的解决方案是使用一个比较器,其给出的低或高电压的输出。

在实践中,密钥仿真不会出现问题。对地短路(缺乏足够的电阻)足以使密钥给出逻辑“0”。

Metakom

Metakom密钥发送4个字节。每个字节以奇偶校验位结尾。Metakom有3个传输原语:

  • 同步位
  • 位0
  • 第1位

地块的结构如下所示:

  • 同步位
  • 4个字节的信息,其中每个字节包含:
  • 1校验位
  • 7个数据位

在99%的情况下,这些对讲机都可以用一把方便的万能钥匙打开。

单线通过示波器

在阅读达拉斯关键示波器捕获信号

传输线的安排是根据一个“电线和总线”的原则与一个开放的排放(当整个总线的状态是由一个“0”状态的任何从属),并可以有两种状态之一:逻辑“0”和逻辑“1”。

设备(键对讲)有在适当的时候拉线零内部晶体管。整个传输线变为逻辑“0”的状态下,如果任何设备它变成零。这就是说,如果对讲机已经退出行至零,钥匙就会了解它,反之亦然。188金宝搏欢迎你

随着电压收缩的帮助和控股水平,1线有4元总线上的工作:

  • 复位脉冲(重置)
  • 存在脉冲(存在)
  • 发送一些0
  • 发送位1(与读取位相同)
读取达拉斯键到Flipper由搜索ROM和读ROM命令组成。每个命令都有一个Reset序列

这就是Flipper 188金宝搏亚洲体育app下载Zero读取密钥的方式:搜索命令检查是否存在Dallas密钥,然后读取ID。这样做是为了避免与其他Cyfral/Metakom密钥随机重合,这些密钥的计时可能与所需的相同。

示波图显示了一个由两个命令组成的长信号,其中每个命令包括:

  • 命令初始化:复位脉冲+ Presence脉冲
  • 命令从
  • 奴隶对收到的命令的反应

让我们在每个阶段中一探究竟。

命令初始化中的复位序列包括复位脉冲和存在脉冲。在复位脉冲中,电平降低主控。在存在脉冲的情况下,液位降低从机

复位序列由两个脉冲组成:

  1. 复位脉冲
  2. 存在脉冲

对于重置脉冲,主机(对讲机)将线路拉至地面。对于存在的冲动-从机(钥匙)将线路拉至地面。一些对讲机不发送重置脉冲,因为钥匙和对讲机之间没有接触被视为重置信号。

读取与响应ID命令。信息比特时隙由2个部分:同步和位值。在命令中,法师是负责两个部分的电压等级。在响应于读取命令,则主机负责同步时,从机负责比特值

初始化命令后,交换信息:

  • 向Slave发送命令
  • 从机对命令的响应

交换是通过时隙进行的:一个时隙对应一位信息。数据是逐位传输的,从最低有效字节的最低有效位开始。主从同步在一个动作中完成:主从(对讲机)拉线到低水平。然后,在一个特定的时间之后,主从端测量线路上的电压并写入一些信息(主从端读取密钥时写入,从端写入密钥时写入)。Read和Write命令的定时规则相同。每个时隙都是独立同步的,所以信息的传输可以暂停而不会造成错误。

所有信号都必须有特定的时间限制!有时,对讲机的制造商会有灵感来制造相当奇特的延时。

iButton还有一种超速模式,在这种模式下,时间延迟会减少,以便更快地传输信息。传说在野外对讲机是在这种模式下工作的。。。然而,在实践中,却没有遇到这些问题。

单线达拉斯键的标准命令

对于iButton来说,通常有一个字节(8位)大小的命令。通常情况下,对讲机使用搜索和读取ID命令(搜索ROM和读取ROM)。

但是一些对讲机的制造商却试图制造出不同的指令序列来检查对讲机是否显示了密钥(而不是模拟器)。

因此,让我们看看现有的命令。常规模式下的标准iButton命令如下:

命令 价值 描述
只读存储器 0x33 读取ID
获取总线上所有设备的唯一代码(在对讲机情况下:只有一个从机)
跳过ROM 的0xCC 忽略adressation
立即切换从(键)到活动模式,开始等待命令。如果总线上有几个键,它们都将同时等待并作出反应(这可能会导致冲突)
比赛罗 0 x55 目的地的选择
主(对讲)发送命令的代码(0x55的),然后再8字节的唯一码,以可寻址的从(键)。它具有相同的代码键被激活,并等待任何后续的命令。
搜索罗 0XF0 ID搜索
在0xF0命令之后,主机(对讲机)立即发送3个时隙的64个有效负载。
每个有效载荷包括:
  • 2读命令
  • 1发送命令

每个有效载荷的描述:
  1. 从站发送的ID的最低位显著
  2. Slave输出相同位的倒数值
  3. 从从主接收比特值

如果接收到的值与密钥的ID相同,则该过程将对下一位重复,直到它已通过ID中的所有64位。
否则,从保持沉默,直到一个新的重置冲动

额外奖励:对讲机按键

为什么旧的对讲机不好?

一些旧的达拉斯对讲在他们的记忆不完整的ID数据库。空字段包含一些值,有时对应于全零(0×00)或全1(0xFF的)。要检查对讲这样的失败,两个键使用:一种是全零,其他所有的人。这些项包含了不正确的家庭代码(不是0×01)和校验(CRC)!- 是的,这可能发生。

邮递员如何把广告带进大楼?

不可能,邮递员送信:)邮局并不是每个入口都有一堆钥匙。它们通常使用通用钥匙,适用于全地形车辆等区域的一组对讲机。该键可以是每个城市一个,每个房屋组一个,可以是某些模型的默认值,也可以完全不存在。

万能钥匙是什么?

通常情况下,这把钥匙本身并不能打开门,而是允许新的钥匙被添加到记忆中。它被记录在对讲机的一个单独的存储区域。这种钥匙可以是某些对讲机的主钥匙,同时也可以是其他对讲机的常用钥匙。这些只是记录在对讲机存储器某处的值。

阻止对讲,同时打转转?

如果您的对讲机有“锁定键”,则可能发生这种情况。它会阻止所有其他钥匙的对讲机,直到用主钥匙解锁。

我们知道空白键

在与iButton的工作过程中,我们记录了一些“空白”键表波纹管。欢迎您使用它!

钥匙 协议 终结 写作
TM2004 达拉斯 电压(8V)
RW2004 达拉斯 电压(8V)
RW1990 达拉斯
RW1990.2 达拉斯 命令
TM-08 达拉斯
TM-08V2 达拉斯
TM-08Vi2 达拉斯
TM-08ViF 达拉斯 命令
RW2000 CYFRAL / METAKOM 在写 + 8V
RW2007 CYFRAL / METAKOM
RW2017 CYFRAL / METAKOM
RW-07 CYFRAL / METAKOM
RW-15 CYFRAL / METAKOM +12V
rw - 057 CYFRAL / METAKOM
KC-07 CYFRAL / METAKOM + 8V
TM-01C 达拉斯/ CYFRAL / METAKOM 命令
TM-01A 达拉斯/ CYFRAL / METAKOM 命令
RW-1 达拉斯/ CYFRAL / METAKOM
RW-1.1 达拉斯/ CYFRAL / METAKOM

现在提前预订

我们的首要任务为满足所有Kickstarter的订单,因此我们的支持者将获得第一批产品。

如果你错过了我们的Kickstarter活动,你可以预购现在在2021年秋季,第二批设备准备好后,你就可以购买了。你的预订帮助我们计划生产和物流。

Baidu