Index: sources/applicationcontroller.cpp =================================================================== diff -u -r2b00ad4142892e8d9e768ef58f139611e9d670c0 -rc12aef133e2c349ba1559a75135a55dd12b977c8 --- sources/applicationcontroller.cpp (.../applicationcontroller.cpp) (revision 2b00ad4142892e8d9e768ef58f139611e9d670c0) +++ sources/applicationcontroller.cpp (.../applicationcontroller.cpp) (revision c12aef133e2c349ba1559a75135a55dd12b977c8) @@ -236,8 +236,41 @@ { #ifndef DISABLE_KEEP_ALIVE QVariantList mData; + Types::U16 u16; + int fakeDataLen = gFakeData.length(); if (gFakeData.length()) { - mData += gFakeData; + QByteArray data; + if (fakeDataLen == 1 && gFakeData == QByteArray::fromHex("00")) { + static quint64 txCount = 0; + for (int i = 0; i < 13; i++) { + switch (i) { + case 0: + u16.value = txCount++; + data += u16.bytes[0]; + data += u16.bytes[1]; + break; + case 12: + for (int i = 0; i < 4; i++) { + data += (char)(0); + } + u16.value = txCount++; + data += u16.bytes[0]; + data += u16.bytes[1]; + break; + default: + for (int i = 0; i < 6; i++) { + data += (char)(0); + } + u16.value = txCount++; + data += u16.bytes[0]; + data += u16.bytes[1]; + break; + } + } + mData += QByteArray::fromHex(data.toHex()); + } else { + mData += gFakeData; + } } else { mData += static_cast(GuiActionData::NoData); }