diff options
Diffstat (limited to 'fw/eeprom.c')
| -rw-r--r-- | fw/eeprom.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fw/eeprom.c b/fw/eeprom.c index 11d0493..1754885 100644 --- a/fw/eeprom.c +++ b/fw/eeprom.c @@ -177,13 +177,14 @@ eepromWriteCanId(U16 addr, const CanId *id) { U8 buf[4u]; // Copy ID to buffer - memset(buf, 0u, sizeof(buf)); if (id->isExt) { // extended memmove(buf, id->eid, sizeof(buf)); - buf[3u] = (buf[3u] & 0x1F) | 0x80; // set EID flag + buf[3u] = (buf[3u] & 0x1F) | 0x80; // set EID flag: bit 31 } else { // standard buf[0u] = id->sid.lo; buf[1u] = id->sid.hi & 0x7; + buf[2u] = 0u; + buf[3u] = 0u; } return eepromWrite(addr, buf, sizeof(buf)); |