diff --git a/libuavcan_drivers/lpc11c24/test_olimex_lpc_p11c24/src/sys/board.cpp b/libuavcan_drivers/lpc11c24/test_olimex_lpc_p11c24/src/sys/board.cpp index 26703c47ac..b3429843aa 100644 --- a/libuavcan_drivers/lpc11c24/test_olimex_lpc_p11c24/src/sys/board.cpp +++ b/libuavcan_drivers/lpc11c24/test_olimex_lpc_p11c24/src/sys/board.cpp @@ -154,10 +154,10 @@ __attribute__((optimize(0))) // Optimization must be disabled lest it hardfa #endif void readUniqueID(std::uint8_t out_uid[UniqueIDSize]) { - unsigned aligned_array[4] = {}; // out_uid may be unaligned, so we need to use temp array + unsigned aligned_array[5] = {}; // out_uid may be unaligned, so we need to use temp array unsigned iap_command = 58; reinterpret_cast(0x1FFF1FF1)(&iap_command, aligned_array); - std::memcpy(out_uid, aligned_array, 16); + std::memcpy(out_uid, &aligned_array[1], 16); } void setStatusLed(bool state)