Yeah I don't think I'm going to get anywhere with this, the code is not very clear about what it's doing. The furthest I've gotten is that I've worked out the device is meant to send/receive 72 byte 'packets', where the first few bytes are info describing the contents and the last two bytes are CRC16 checksum of the first 70 bytes, apart from that I have no idea.
After studying the code for a while I tried to manually crafted the packet that it's meant when you click on the 'show cart info' button, but it didn't work, the device just sends back a single byte 0xFC in response, which is the same behaviour as if I send 72 random bytes.
I'll contact you about trading