You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2018/10/05 14:18:46 UTC
[incubator-plc4x] branch master updated: - More work on decoding
the addressing of DeltaV traffic
This is an automated email from the ASF dual-hosted git repository.
cdutz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-plc4x.git
The following commit(s) were added to refs/heads/master by this push:
new e771476 - More work on decoding the addressing of DeltaV traffic
e771476 is described below
commit e7714764c5a43c33e5f6dad50c6e680b5ebf4dd5
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Fri Oct 5 16:18:38 2018 +0200
- More work on decoding the addressing of DeltaV traffic
---
.../java/org/apache/plc4x/java/deltav/PoC.java | 365 +++++++++++++++++----
1 file changed, 299 insertions(+), 66 deletions(-)
diff --git a/plc4j/protocols/delta-v/src/test/java/org/apache/plc4x/java/deltav/PoC.java b/plc4j/protocols/delta-v/src/test/java/org/apache/plc4x/java/deltav/PoC.java
index 6185908..4c7dd31 100644
--- a/plc4j/protocols/delta-v/src/test/java/org/apache/plc4x/java/deltav/PoC.java
+++ b/plc4j/protocols/delta-v/src/test/java/org/apache/plc4x/java/deltav/PoC.java
@@ -93,66 +93,9 @@ public class PoC {
if(messageType == 0x0002) {
short payloadType = buf.readShort();
switch(payloadType) {
- case 0x1B01: {
- // NOTE:
- // - Seems to be sent as soon as the OS start up and a screen is opened.
- // - Sent from the controller to the OS
- // - The end seems to be a string followed by 0xFFFF
- //
- // Found packets:
- // 1b 01 00 00 00 00 00 07 03 8a 01 c4 00 04 00 1e
- // 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 04 cf 1a 0b 00 35 01 2c
- // 00 00 03 e8 00 00 00 05 00 49 00 44 00 49 00 53
- // 00 50 00 00 ff ff 01
- //
- // 1b 01 00 00 00 00 00 07 03 8c 01 c6 00 04 00 30
- // 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 04 cf 1a 0b 00 35 01 2c
- // 00 00 03 e8 00 01 00 0e 00 43 00 2f 00 53 00 57
- // 00 5f 00 4d 00 41 00 58 00 5f 00 53 00 43 00 41
- // 00 4c 00 45 00 00 ff ff 01
- }
- case 0x1B02: {
- // NOTE:
- // - Seems to be sent as soon as the OS start up and a screen is opened.
- // - Sent from the OS to the controller
- // - Seems to be a response from the OS to the controller to a previous 0x1B01 message
- // - Size of the response seems to be in direct correlation with the size of the corresponding 0x1B01 message
- //
- // Found packets:
- // 1b 02 00 00 00 00 00 07 03 8a 01 c4 00 04 00 00
- // 00 06 00 01 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 01 00 00 00 00 00 35 01
- // 2c 04 cf 1a 0b 03 00 00 00 00 00 1f 01
- //
- // 1b 02 00 00 00 00 00 07 03 8c 01 c6 00 04 00 00
- // 00 06 00 01 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- // 00 00 00 00 00 00 00 00 01 00 00 00 00 00 35 01
- // 2c 04 cf 1a 0b 02 00 01 24 00 0e 43 48 00 00 c2
- // 20 00 00 03 e9 01 01 5e 8a
- }
case 0x0201: {
+ // Notes:
+ // - Sent from the OS to the controller
// Found packets:
// 02 01 00 42 0a 08 00 65 01 5a 00 59 00 00 00 00
// 00 00 00 00
@@ -166,7 +109,8 @@ public class PoC {
case 0x0202: {
// Note:
// - Seems to occur during connection establishment phase.
-
+ // - Response to a 0x0201
+ // - Sent from the Controller to the OS
// Found packets:
// 02 02 00 00 00 00 00 65 01 de 00 18 00 00 00 00
// 00 06 00 00 00 00 00 00
@@ -174,7 +118,7 @@ public class PoC {
}
case 0x0301: {
// Note:
- // - The controllers seem to send these messages
+ // - Sent from the OS to the controllers
// - It seems that there are two variants of these packets:
// - Short ones containing almost no information
// - Long ones containing a pattern 14 bytes each starting with 0x04 an an incrementing byte value
@@ -193,6 +137,21 @@ public class PoC {
// 03 01 00 2e 0a 08 00 66 00 00 00 00 00 00 00 00
// 00 04 00 00 00 00 00 00 c5
//
+ // (medium)
+ // 03 01 00 00 00 00 00 07 02 95 00 bf 00 04 00 00
+ // 00 08 00 01 00 00 00 00 01 04 8f 17 b8 00 2f 01
+ // 36 00 00 3a 98 00 01 00 04 00 44 00 4e 00 4c 00
+ // 44 00 00 00 02 00 06 00 4f 00 49 00 4e 00 54 00
+ // 45 00 47 00 00 ff ff 88 ad
+ // Contains Text: DNLD and OINTEG
+ //
+ // (medium)
+ // 03 01 00 00 00 00 00 07 02 ec 01 16 00 04 00 00
+ // 00 08 00 01 00 00 00 00 01 04 8f 17 b8 00 2f 01
+ // 36 00 00 3a 98 00 03 00 06 00 53 00 49 00 4e 00
+ // 54 00 45 00 47 00 00 ff ff
+ // Contains Text: SINTEG
+ //
// (big)
// 03 01 00 00 00 00 00 53 00 00 00 00 00 00 00 00
// 00 04 00 00 00 00 00 00 23 04 1f 17 48 00 3c 00
@@ -213,6 +172,11 @@ public class PoC {
outputPacket(buf);
break;
}
+ case 0x0302: {
+ // Notes:
+ // - Seems to be one possible response to a 0x0301 message
+ // - Sent from the Controller to the OS
+ }
case 0x0304: {
// Note:
// - The Operator Systems seem to be sending these messages.
@@ -279,8 +243,15 @@ public class PoC {
}
case 0x0401: {
// Note:
- // - Seems to be sent by the controller every 10-15 seconds.
+ // - Sent by the OS during connection phase.
// Found packets:
+ // Connection OS sent to Controller:
+ // 04 01 00 00 00 00 00 64 03 57 01 82 00 00 00 00
+ // 00 19 00 00 00 05 00 24 00 00 00 00 00 00 00 fa
+ // ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
+ // ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff c0
+ // 01 2e
+ // Later on:
// 04 01 00 2a 0a 08 00 64 02 26 01 38 00 00 00 00
// 00 19 00 00 00 05 00 24 00 00 00 00 00 00 00 fa
// ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
@@ -603,11 +574,10 @@ public class PoC {
break;
}
case (byte) 0x03: {
- // TODO: Check if these other types still exist ..
+ // Note:
+ // - Might be error responses ...
// Found blocks:
// 03 00 23 00 00 00 4a (size 6)
- // 03 01 00 27 01 1e 04 36 1d (size 8)
- // 03 01 00 24 01 1b 04 33 1c fe (size 9)
switch (type) {
case (byte) 0x00: {
buf.skipBytes(3);
@@ -630,7 +600,7 @@ public class PoC {
}
case 0x0404: {
// Note:
- // - Seems to be used during connection.
+ // - Seems to be used during connection phase.
// Found Packets:
// 04 04 00 00 00 00 01 23 00 00 00 00 00 00 00 00
// 00 0a 00 00 00 00 00 00 00 00 00 00 00 07 00 45
@@ -647,10 +617,273 @@ public class PoC {
break;
}
case 0x0506: {
+ // Notes:
+ // - Sent from the Controller to the OS
+ // Found packets:
+ // 05 06 00 00 00 00 01 03 00 00 00 00 00 00 00 00
+ // 00 06 00 00 00 04 00 04 00 04 00 1f 00 00 00 00
+ // 00 00 01 90 00 00 0b 00 45 00 52 00 53 00 41 00
+ // 54 00 5a 00 53 00 54 00 52 00 4f 00 4d 00 00 01
+ // Contained a text at the end: ERSATZSTROM
+ //
+ // 05 06 00 00 00 01 01 03 00 00 00 00 00 00 00 00
+ // 00 06 00 00 00 04 00 04 00 04 00 29 00 00 00 00
+ // 00 00 01 90 00 00 10 00 56 00 45 00 52 00 52 00
+ // 5f 00 51 00 55 00 45 00 4c 00 4c 00 41 00 42 00
+ // 53 00 41 00 55 00 47 00 00 01
+ // Contained a text at the end: VERR_QUELLABSAUG
+ //
+ // 05 06 00 00 00 00 01 03 00 00 00 00 00 00 00 00
+ // 00 06 00 00 00 04 00 04 00 04 00 45 00 00 00 00
+ // 00 00 01 90 00 00 0e 00 50 00 53 00 30 00 32 00
+ // 41 00 57 00 56 00 42 00 31 00 4d 00 43 00 54 00
+ // 31 00 30 00 00 00 0e 00 50 00 53 00 30 00 32 00
+ // 41 00 57 00 56 00 42 00 31 00 4d 00 43 00 54 00
+ // 30 00 33 00 00 02
+ // Contained a text at the end: PS02AWVB1MCT10 and PS02AWVB1MCT03
System.out.println("Got 0x" + Hex.encodeHexString(new byte[]{(byte)(payloadType >> 8), (byte)(payloadType & 0xFF)}) + " packet");
// outputPacket(buf);
break;
}
+ // 0x08xx: Possibly explicit read request/response
+ case 0x0801: {
+ // Notes:
+ // - Sent from the OS to the controller
+ // Found packets:
+ // 08 01 00 00 00 00 00 00 02 92 00 bc 00 08 00 00
+ // 00 03 00 04 00 0a 00 08 00 06 00 18 00 0a 00 1c
+ // 00 02 00 24 00 02 00 26 00 00 00 00 04 8f 17 b8
+ // ff ff ff ff 00 06 00 4f 00 49 00 4e 00 54 00 45
+ // 00 47 00 00 00 00 00 00 00 02 00 43 00 56 00 00
+ // 00 00 00 00
+ // Contained a text OINTEG
+ break;
+ }
+ case 0x0802: {
+ // Notes:
+ // - Response for a 0x0801 message
+ // - Sent from the Controller to the OS
+ // Found packets:
+ // 08 02 00 00 00 00 00 00 02 92 00 bc 00 00 00 00
+ // 00 00 00 00 00 1a 00 04 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 06 00 00 00 00 00 00
+ // 01 01
+ break;
+ }
+ case 0x1B01: {
+ // NOTE:
+ // - Seems to be sent as soon as the OS start up and a screen is opened.
+ // - Sent from the OS to the Controller
+ // - Structure of parts is always:
+ //
+ // Found packets:
+ // 1b 01 00 00 00 00 00 07 03 8a 01 c4 00 04 00 1e
+ // 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00
+ // 04 cf 1a 0b 00 35 01 2c 00 00 03 e8
+ // 00 00 00 05 00 49 00 44 00 49 00 53 00 50 00 00
+ // ff ff 01
+ //
+ // Another short one:
+ // 1b 01 00 00 00 00 00 07 03 8c 01 c6 00 04 00 30
+ // 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00
+ // 04 cf 1a 0b 00 35 01 2c 00 00 03 e8
+ // 00 01 00 0e 00 43 00 2f 00 53 00 57 00 5f 00 4d 00 41 00 58 00 5f 00 53 00 43 00 41 00 4c 00 45 00 00
+ // ff ff 01
+ //
+ // When opening a new screen:
+ // 1b 01 00 00 00 00 00 07 03 6d 01 97 00 04 05 04
+ // 00 08 00 00 00 08 01 78 00 08 02 90 00 08 03 fa
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00
+ //
+ // 04 96 17 bf 00 38 01 3f 00 00 03 e8
+ // 00 00 00 0d 00 41 00 2f 00 49 00 53 00 54 00 5f 00 46 00 57 00 5f 00 4b 00 55 00 52 00 5a 00 00
+ // 00 01 00 05 00 53 00 4b 00 41 00 4c 00 31 00 00
+ // 00 02 00 06 00 41 00 4c 00 41 00 52 00 4d 00 53 00 00
+ // 00 03 00 05 00 53 00 4b 00 41 00 4c 00 32 00 00
+ // 00 04 00 0a 00 44 00 59 00 4e 00 5f 00 42 00 45 00 53 00 43 00 48 00 32 00 00
+ // 00 05 00 0b 00 41 00 4b 00 54 00 5f 00 53 00 43 00 48 00 52 00 49 00 54 00 54 00 00
+ // 00 06 00 0e 00 41 00 2f 00 42 00 41 00 5f 00 47 00 46 00 45 00 53 00 5f 00 41 00 55 00 54 00 4f 00 00
+ // 00 07 00 04 00 41 00 2f 00 42 00 41 00 00
+ // 00 08 00 09 00 47 00 46 00 5f 00 53 00 54 00 41 00 54 00 55 00 53 00 00
+ // 00 09 00 08 00 49 00 53 00 54 00 57 00 45 00 52 00 54 00 32 00 00
+ // 00 0a 00 07 00 47 00 46 00 5f 00 4e 00 41 00 4d 00 45 00 00
+ // 00 0b 00 06 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 0c 00 0a 00 44 00 59 00 4e 00 5f 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 0d 00 06 00 42 00 45 00 53 00 43 00 48 00 32 00 00
+ // 00 0e 00 0b 00 41 00 2f 00 47 00 46 00 45 00 5f 00 41 00 4c 00 41 00 52 00 4d 00 00
+ // 00 0f 00 08 00 49 00 53 00 54 00 57 00 45 00 52 00 54 00 31 00 00
+ // ff ff
+ // 04 97 17 c0 00 39 01 40 00 00 03 e8
+ // 00 00 00 06 00 41 00 4c 00 41 00 52 00 4d 00 53 00 00
+ // 00 01 00 05 00 53 00 4b 00 41 00 4c 00 31 00 00
+ // 00 02 00 09 00 47 00 46 00 5f 00 53 00 54 00 41 00 54 00 55 00 53 00 00
+ // 00 03 00 06 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 04 00 04 00 41 00 2f 00 41 00 31 00 00
+ // 00 05 00 0d 00 41 00 2f 00 49 00 53 00 54 00 5f 00 46 00 57 00 5f 00 4b 00 55 00 52 00 5a 00 00
+ // 00 06 00 0a 00 44 00 59 00 4e 00 5f 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 07 00 07 00 47 00 46 00 5f 00 4e 00 41 00 4d 00 45 00 00
+ // 00 08 00 04 00 41 00 2f 00 42 00 41 00 00
+ // 00 09 00 0b 00 41 00 2f 00 47 00 46 00 45 00 5f 00 41 00 4c 00 41 00 52 00 4d 00 00
+ // 00 0a 00 0e 00 41 00 2f 00 42 00 41 00 5f 00 47 00 46 00 45 00 53 00 5f 00 41 00 55 00 54 00 4f 00 00
+ // 00 0b 00 08 00 49 00 53 00 54 00 57 00 45 00 52 00 54 00 31 00 00
+ // ff ff
+ // 04 98 17 c1 00 3a 01 41 00 00 03 e8
+ // 00 00 00 05 00 53 00 4b 00 41 00 4c 00 32 00 00
+ // 00 01 00 08 00 49 00 53 00 54 00 57 00 45 00 52 00 54 00 31 00 00
+ // 00 02 00 09 00 47 00 46 00 5f 00 53 00 54 00 41 00 54 00 55 00 53 00 00
+ // 00 03 00 05 00 53 00 4b 00 41 00 4c 00 31 00 00
+ // 00 04 00 04 00 41 00 2f 00 41 00 31 00 00
+ // 00 05 00 06 00 41 00 4c 00 41 00 52 00 4d 00 53 00 00
+ // 00 06 00 0b 00 41 00 2f 00 47 00 46 00 45 00 5f 00 41 00 4c 00 41 00 52 00 4d 00 00
+ // 00 07 00 07 00 47 00 46 00 5f 00 4e 00 41 00 4d 00 45 00 00
+ // 00 08 00 04 00 41 00 2f 00 42 00 41 00 00
+ // 00 09 00 0a 00 44 00 59 00 4e 00 5f 00 42 00 45 00 53 00 43 00 48 00 32 00 00
+ // 00 0a 00 06 00 42 00 45 00 53 00 43 00 48 00 32 00 00
+ // 00 0b 00 06 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 0c 00 08 00 49 00 53 00 54 00 57 00 45 00 52 00 54 00 32 00 00 00
+ // 0d 00 0e 00 41 00 2f 00 42 00 41 00 5f 00 47 00 46 00 45 00 53 00 5f 00 41 00 55 00 54 00 4f 00 00
+ // 00 0e 00 0a 00 44 00 59 00 4e 00 5f 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 0f 00 0d 00 41 00 2f 00 49 00 53 00 54 00 5f 00 46 00 57 00 5f 00 4b 00 55 00 52 00 5a 00 00
+ // ff ff
+ // 04 99 17 c2 00 3b 01 42 00 00 03 e8
+ // 00 00 00 06 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 01 00 05 00 53 00 4b 00 41 00 4c 00 31 00 00
+ // 00 02 00 0e 00 41 00 2f 00 42 00 41 00 5f 00 47 00 46 00 45 00 53 00 5f 00 41 00 55 00 54 00 4f 00 00
+ // 00 03 00 07 00 47 00 46 00 5f 00 4e 00 41 00 4d 00 45 00 00
+ // 00 04 00 0b 00 41 00 2f 00 47 00 46 00 45 00 5f 00 41 00 4c 00 41 00 52 00 4d 00 00
+ // 00 05 00 0d 00 41 00 2f 00 49 00 53 00 54 00 5f 00 46 00 57 00 5f 00 4b 00 55 00 52 00 5a 00 00
+ // 00 06 00 06 00 41 00 4c 00 41 00 52 00 4d 00 53 00 00
+ // 00 07 00 04 00 41 00 2f 00 42 00 41 00 00
+ // 00 08 00 09 00 47 00 46 00 5f 00 53 00 54 00 41 00 54 00 55 00 53 00 00
+ // 00 09 00 0a 00 44 00 59 00 4e 00 5f 00 42 00 45 00 53 00 43 00 48 00 31 00 00
+ // 00 0a 00 08 00 49 00 53 00 54 00 57 00 45 00 52 00 54 00 31 00 00
+ // ff ff 04
+ }
+ case 0x1B02: {
+ // NOTE:
+ // - Seems to be sent as soon as the OS start up and a screen is opened.
+ // - Sent from the Controller to the OS
+ // - Seems to be a response to a previous 0x1B01 message
+ // - Size of the response seems to be in direct correlation with the size of the corresponding 0x1B01 message
+ //
+ // Found packets:
+ // 1b 02 00 00 00 00 00 07 03 8a 01 c4 00 04 00 00
+ // 00 06 00 01 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00
+ // 01 00 00 00 00 00 35 01 2c 04 cf 1a 0b
+ // 03 00 00 00 00 00 1f <!-- Error response with return code (0x0000001F)
+ // 01
+ //
+ // Another short one:
+ // 1b 02 00 00 00 00 00 07 03 8c 01 c6 00 04 00 00
+ // 00 06 00 01 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00
+ // 01 00 00 00 00 00 35 01 2c 04 cf 1a 0b
+ // 02 00 01 24 00 0e 43 48 00 00 c2 20 00 00 03 e9 01
+ // 01
+ //
+ // When opening a new screen:
+ // 1b 02 00 00 00 00 00 07 03 6d 01 97 00 04 00 00
+ // 00 06 00 01 00 06 01 51 00 06 02 3c 00 06 03 59
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ // 00 00 00 00 00 00 00 00
+ //
+ // 04 00 00 00 00 00 38 01 3f 04 96 17 bf
+ // 02 00 00 47 00 17 00 08 00 4b 00 65 00 69 00 6e 00 65 00 20 00 46 00 57 00 00
+ // 02 00 01 24 00 0e 43 48 00 00 c2 20 00 00 03 e9 01
+ // 02 00 02 76 00 76 05 01 01 00 00 00 0e 00 47 00 46 00 45 00 5f 00 56 00 45 00 52 00 52 00 49 00 45 00 47 00 45 00 4c 00 54 00 00 00 54 00 54 01 07 00 00 2a f1 c7 82 e4 d8 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00
+ // 02 00 03 24 00 0e 40 20 00 00 00 00 00 00 80 16 03
+ // 02 00 04 47 00 11 00 05 00 4d 00 43 00 50 00 30 00 31 00 00
+ // 02 00 05 47 00 07 00 00 00 00
+ // 02 00 06 01 00
+ // 02 00 07 05 00
+ // 02 00 08 63 00 00 19 c4 2f
+ // 02 00 09 08 3f 89 68 4c
+ // 02 00 0a 47 00 19 00 09 00 50 00 54 00 30 00 39 00 41 00 4e 00 41 00 44 00 31 00 00
+ // 02 00 0b 47 00 09 00 01 00 54 00 00
+ // 02 00 0c 47 00 11 00 05 00 4d 00 43 00 54 00 30 00 31 00 00
+ // 02 00 0d 47 00 09 00 01 00 50 00 00
+ // 02 00 0e 05 01
+ // 02 00 0f 08 42 49 aa aa
+ //
+ // 01 00 00 00 00 00 39 01 40 04 97 17 c0
+ // 02 00 00 76 00 58 05 01 01 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00
+ // 02 00 01 24 00 0e 41 28 00 00 00 00 00 00 05 45 01
+ // 02 00 02 63 00 00 19 c4 2f
+ // 02 00 03 47 00 09 00 01 00 46 00 00
+ // 02 00 04 05 01
+ // 02 00 05 47 00 17 00 08 00 4b 00 65 00 69 00 6e 00 65 00 20 00 46 00 57 00 00
+ // 02 00 06 47 00 07 00 00 00 00
+ // 02 00 07 47 00 19 00 09 00 50 00 54 00 30 00 39 00 41 00 44 00 42 00 51 00 31 00 00
+ // 02 00 08 05 00
+ // 02 00 09 05 01
+ // 02 00 0a 01 00
+ // 02 00 0b 21 80 00 00 00 00
+ //
+ // 01 00 00 00 00 00 3a 01 41 04 98 17 c1
+ // 02 00 00 24 00 0e 42 c8 00 00 00 00 00 00 06 34 00
+ // 02 00 01 08 3f 7f ff ff
+ // 02 00 02 63 00 00 19 c4 2f
+ // 02 00 03 24 00 0e 3f 99 99 9a 00 00 00 00 80 16 03
+ // 02 00 04 05 01
+ // 02 00 05 76 00 58 05 01 01 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00
+ // 02 00 06 05 00
+ // 02 00 07 47 00 19 00 09 00 50 00 54 00 30 00 39 00 41 00 44 00 48 00 4f 00 31 00 00
+ // 02 00 08 05 00
+ // 02 00 09 47 00 07 00 00 00 00
+ // 02 00 0a 47 00 07 00 00 00 00
+ // 02 00 0b 47 00 09 00 01 00 50 00 00
+ // 02 00 0c 08 00 00 00 00
+ // 02 00 0d 01 01
+ // 02 00 0e 47 00 0d 00 03 00 56 00 41 00 4b 00 00
+ // 02 00 0f 47 00 17 00 08 00 4b 00 65 00 69 00 6e 00 65 00 20 00 46 00 57 00 00
+ //
+ // 01 00 00 00 00 00 3b 01 42 04 99 17 c2
+ // 02 00 00 47 00 09 00 01 00 46 00 00
+ // 02 00 01 24 00 0e 41 20 00 00 00 00 00 00 05 45 01
+ // 02 00 02 01 00
+ // 02 00 03 47 00 19 00 09 00 50 00 54 00 30 00 39 00 41 00 41 00 4e 00 4b 00 31 00 00
+ // 02 00 04 05 01
+ // 02 00 05 47 00 17 00 08 00 4b 00 65 00 69 00 6e 00 65 00 20 00 46 00 57 00 00
+ // 02 00 06 76 00 58 05 01 01 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 ff 00 00 00 00 00 00 00 00
+ // 02 00 07 05 00
+ // 02 00 08 63 00 00 19 c4 2f
+ // 02 00 09 47 00 07 00 00 00 00
+ // 02 00 0a 08 00 00 00 00
+ //
+ // 01
+ }
default: {
System.out.println("Got 0x" + Hex.encodeHexString(new byte[]{(byte)(payloadType >> 8), (byte)(payloadType & 0xFF)}) + " packet");
outputPacket(buf);