| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
The Request and Response types have to have a size of 64 bytes.
Previously, we only verified this property by visual inspection.
Accidental changes to the size could lead to runtime errors. This patch
adds static assertions using the static_assertions crate to enforce this
property at compile time.
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we manually constructed the data to sent with a Get_Report
response. This patch introduces the Response struct which can be
serialized using ssmarshal.
As Serialize is only implemented for arrays with a length up to 32, we
have to use the serde-big-array crate for the data field. As the
command ID might not be recognized by us, we use a raw u8 value instead
of the CommandId enum.
|
|
|
|
|
|
| |
Previously, we manually converted the request and response data from and
to byte slices. This patch adds the ssmarshal dependency that automates
the serialization and deserialization in the required format.
|
|
|
|
|
|
|
|
| |
This patch adds the usb-device and stm32f103xx-usb crates that provide a
USB stack. It introduces the HidClass struct, a basic implementation of
the Human Interface Device (HID) USB class. Devices with that class are
recognized as HID devices with the specified vendor and product ID, but
do not provide the endpoints required for interaction.
|
|
|