Windows10系统USB-HID虚拟可充电电池
我们的笔记本都会有电池,当接通电源后,电池会自动充电。但是我们的台式机器没有电池,有时想看一些电源配置相关的操作,因为没有电池选项,也就无法测试。
基于上述情况,我们通过USB-HID报告描述符虚拟出一个USBZH UPS电池设备。该设备是通过USB虚拟驱动实现的,其参考的报告描述符及其数据格式详细解释详见:https://www.usbzh.com/article/detail-1209.html
驱动&设备
驱动名字为HIDBattry,相关的驱动名字为:
2025/10/24 14:16 2,394 hidbattery.cat
2025/10/24 14:16 1,521 HidBattery.inf
2025/10/24 14:16 30,416 HidBattery.sys
安装该驱动之后,在电脑的设备管理器中出现的设备如下:

当然,在任务栏中,也会出现电池的图标:
当然,这里打开控制面板系统的电源与睡眠配置页,可以设置电池的相关选项,也会生效。如本人就设置为切换为电池供电后,10分钟休眠。实际在测试过程中,因为没有留意到,还以为电脑关机了。不过也侧面正明确实生效了。

数据上报与应用软件控制
为了配置当前的参数信息和当前的电池容量信息等,我们贴心的开发一个应用软件,能过该软件可以配置当前电池的参数:
该软件主要分为两大部分:
第一部分为FeatureReport,其主要是当前电源的规格信息
第二部分为InputReport,主其要配置的是电池的当前电量百分比,还可以使用多久没电,当前温度等。
我们通过UI控制这些信息,可以实现对电源的规格及当前参数控制。
说明:FeatuerReport是驱动加载后获取几次后,不再一直获取,而是系统根据需要会主动获取,所以不会存在IRP Pending的状态,但是InputReport会一直有个IRP Pending,这样当数据时会返回数据,是随时待命的。
另外,由于InputReport上报数据,会触发系统再次获取FeatuerReport,来获取当前的电池状态(如是否充电,是正常使用等)。
USB虚拟设备实现示例




