Pico HID 教程指南

Pico HID 教程指南

pico-hid Code to allow the PICO to be recognized as an HID and enter keyboard commands as if it were a regular input device. pico-hid 项目地址: https://gitcode.com/gh_mirrors/pi/pico-hid


项目介绍

Pico HID 是一个基于 Raspberry Pi Pico 的项目,旨在将此微控制器转换成一个通用的人体学接口设备(HID),比如键盘或鼠标,适用于 PiKVM V2 及以上版本。它解决了在较新型号的 PiKVM 上实现传统 PS/2 接口的需求,同时也可用于教育目的,展示如何模拟 HID 设备及相关的安全风险,如 BadUSB 攻击。

项目快速启动

步骤 1: 硬件准备

确保拥有以下组件:

  • Raspberry Pi Pico 板(已焊上引脚)
  • USB-A 到 Micro-USB 数据线
  • Dupont 跳线(女性对女性)x10
  • 1N5819 整流二极管(推荐但可选)

步骤 2: 下载并烧录固件

  1. 将 Raspberry Pi Pico 连接到电脑,它会被识别为一个闪存驱动器。
  2. CircuitPython 下载适合的 UF2 文件,并复制到Pico出现的盘符下。
  3. 安全弹出USB设备。

步骤 3: 配置(针对PiKVM V2或V3)

  • 对于 PiKVM V2 或 V3,需要修改配置文件。

    • /boot/config.txt 添加 dtoverlay=spi0-1cs
    • 编辑 /etc/kvmd/override.yaml,添加以下内容:
    kvmd:
      hid:
        type: spi
        chip: 0
        bus: 0
        sw_cs_pin: 7
        sw_cs_per_byte: true
        reset_pin: 25
        reset_inverted: true
        reset_self: true
        power_detect_pin: 16
        power_detect_pull_down: true
    

步骤 4: 测试连接

  • 使用数据线将 Pico HID 连接至目标主机,现在应该可以作为输入设备被识别。

应用案例和最佳实践

  • PS/2替代:在现代硬件中重新利用旧式PS/2键盘和鼠标的经典搭配。
  • BadUSB演示:在安全培训中,通过Pico HID模拟恶意USB行为,增加实战训练深度。
  • 自定义快捷键:编程Pico HID发送特定按键序列来自动化日常任务或快速进入系统管理模式。

典型生态项目

  • PiKVM集成:作为PiKVM项目的一部分,Pico HID使远程管理和控制服务器成为可能,尤其是在需要物理层交互如开关机、BIOS设置等场景下。
  • 个性化键盘开发:利用Pico的灵活性,开发者可以创建定制化的机械键盘,结合自定义固件以满足特定需求。

通过这个教程,你可以开始探索 Raspberry Pi Pico 作为 HID 设备的强大潜力,并将其整合进你的项目或者提升你的PiKVM体验。记得,安全始终是第一位的,特别是在处理模拟USB设备时。

pico-hid Code to allow the PICO to be recognized as an HID and enter keyboard commands as if it were a regular input device. pico-hid 项目地址: https://gitcode.com/gh_mirrors/pi/pico-hid

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戴策峥Homer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值