The HID service currently uses comms system to transport messages from HID host to HID devices. As in, there is a HID host service that waits for HID requests from the host over i2c, then forwards those requests to HID devices that know how to process the request. The devices then send a response back to the host through the comms system.
Instead, the HID devices should just expose direct async methods for processing HID requests and the hid-service should directly call those methods on the devices.
The HID service currently uses comms system to transport messages from HID host to HID devices. As in, there is a HID host service that waits for HID requests from the host over i2c, then forwards those requests to HID devices that know how to process the request. The devices then send a response back to the host through the comms system.
Instead, the HID devices should just expose direct async methods for processing HID requests and the hid-service should directly call those methods on the devices.