Closed davidqge closed 1 month ago
I checked the BLE report writing, it seems current implementation has a bug when serializing the report:
https://github.com/HaoboGu/rmk/blob/main/rmk/src/ble/esp/server.rs#L31-L38
async fn write_serialize<IR: AsInputReport>(&mut self, r: &IR) -> Result<(), HidError> {
use ssmarshal::serialize;
let mut buf: [u8; 32] = [0; 32];
- match serialize(&mut buf, &r) {
+ match serialize(&mut buf, r) {
Ok(n) => self.write(&buf[0..n]).await,
Err(_) => Err(HidError::ReportSerializeError),
}
}
Could you please try this fix?
Please also add ci for esp32c6 to .github/workflows/build esp.yml
Yes, that fixed the crash too. Added ci, and changed readme.
LGTM, thanks a lot!
Fixed several crashes on esp32c6. Typing is working now, except Vial.