AVR-GCC compiler seems to have unexpected results compared to precompiled hex files on XMEGA


I’ve recently bought Chipwhisperer Lite (2 part) and was going through the tutorials (version 4.0.4).

For instance, I tried the simpleserial, simpleserial_aes and basic-passwdcheck.

The issue:

When I use precompiled simpleserial_aes, it does return a response to command “p1234567890abcdef” when I put it in terminal. When i build it myself with “make PLATFORM=CWLITEXMEGA” I get no response.

However, using “x” to reset works and also it works when I use “putch()”. Just I that I can’t see the response for some reason. The basic-passwdcheck works since it uses putch() instead of simpleserial_put().

Example are two these screenshot, one is my compiled version and the other is precompiled version (a .hex file from 4.0.4 release):

I tried to change SimpleSerial version in Scope settings, but it does not seem it has any effect.

Strange thing is that the Tutorial B5 with breaking AES works even with the “wrong” version (the responses seem to appear in the multiple capture). Not sure what to make of it.

Any ideas?

EDIT: tried it on two machines, Ubuntu 16.04 and Ubuntu 18.04, same result



I am just guessing here but can you try using PLATFORM=CW303 and see if things start working?
I am suspecting #defines can not handle the CWLITEXMEGA
For example this code