I found that the function
Code: Select all
void XUA_Endpoint0_setSerialStr(char* serial_str)
in
xua_endpoint0.c writes the passed string to
g_serial_str, but that variable is only used when creating the USB structure, so if the serial string needs to be changed at runtime, e.g. after reading it from the Flash, it will not be updated; so the serial string will always be the same as the string set with
The following change allows to set the serial string at runtime
Code: Select all
388c392
< concatenateAndCopyStrings(serial_str, "", g_serial_str);
---
> concatenateAndCopyStrings(serial_str, "", g_strTable.serialStr);
Is there any issue with this change, that I didn't spot? If not, could it be considered for future releases?