逆向工程餐厅寻呼机系统🍽️

保罗·塔利亚蒙特 2024-06-14 我已经很久没有尝试过新东西了——最近在无线电方面有点停滞不前——致力于改进和调试我目前最了解的东西。前几天,我出去吃饭,闲暇时想知道餐厅传呼机系统是如何工作的。闲暇时的好奇心让我意识到,事实上,我很可能有办法和能力回答这个问题,所以我在 eBay 上买了第一套看起来最受欢迎的餐厅传呼机,想着这将是一次有趣的为期数周的冒险。 我最终购买了 Retekess 品牌的 TD-158 餐厅寻呼机系统(它们看起来和我以前见过的一样,而且似乎价格低廉且很受欢迎),之后很快就拿到了一包 10 个寻呼机和一个基站。手册上说无线电工作在 433 MHz`(很酷!可以做到!喜欢好的 ISM 频段设备),在初步阅读手册以获取有关 PHY 的提示后,我发现了一些有趣的东西。首先,基站 ID 限制为 0-999,这很奇怪,因为这意味着限制因素可能是基站上的十进制显示,而不是协议——我们需要足够的位来存储 999——至少 10 位。似乎没有其他东西引起我的注意,所以我想不妨直接跳到它。 我不是那种喜欢玩弄成功的人,所以我做了和我在圣诞树帖子中所做的一模一样的事情,并在 433.92MHz 处进行了捕获,因为它处于频段中间,然后立即产生了似曾相识的感觉。不仅信号在 433.92MHz,而且将数据包放入检查器后,我得到了 完全相同的 OOK 编码方案的图。 不仅仅是相似,而是完全相同。唯一的主要区别是数据包的波特率和位结构,唯一的次要区别是我认为存在唤醒前导数据包(全为零),而不是持续时间比通常的 PHY 符号更长的前导符号(在我看来,这使得这个寻呼机系统比我的树更容易使用)。 开始工作时,我进行了一些测量,以确定几个数据包过程中的符号持续时间,我能够确定符号率大约为 858 微秒(每个符号 0.000858 秒),这是一个奇怪的数字,但也许我稍微偏离了一点,或者是我遗漏了一些更大的数学知识,使得这个数字令人满意地四舍五入(内部低成本晶体时钟或类似的东西?我认为这是寻呼机的一些硬件限制?) 无论如何,已经足够好了。接下来,让我们尝试解调——我们假设它与圣诞树帖子完全相同,并以相同的方式解调 1 和 0。这给了我们 26 位: 00001101110000001010001000 现在,我知道我们需要至少 10 位的基站 ID、一些位的寻呼机 ID 和一些位的命令。这是我从基站 ID 55 向 […]