[dss-commits] r8773 - dss/trunk/unix

dss-commits at forum.digitalstrom.org dss-commits at forum.digitalstrom.org
Mon Sep 21 16:46:08 CEST 2009


Author: pstaehlin
Date: 2009-09-21 16:46:08 +0200 (Mon, 21 Sep 2009)
New Revision: 8773

Modified:
   dss/trunk/unix/ds485proxy.cpp
Log:
Read out the version info correctly (network byte-order would have been nice...)

Modified: dss/trunk/unix/ds485proxy.cpp
===================================================================
--- dss/trunk/unix/ds485proxy.cpp	2009-09-21 14:43:49 UTC (rev 8772)
+++ dss/trunk/unix/ds485proxy.cpp	2009-09-21 14:46:08 UTC (rev 8773)
@@ -516,19 +516,19 @@
     PayloadDissector pd(_frame->getPayload());
     pd.get<uint8_t>();
     uint16_t devID = pd.get<uint16_t>();
-    devID &= 0x00FF;
+    devID =  devID >> 8;
     if(devID == 0) {
       log("Found dSS");
     } else if(devID == 1) {
       log("Found dSM");
     } else {
-      log(string("Found unknown device (") + intToString(devID) + ")");
+      log(string("Found unknown device (") + intToString(devID, true) + ")");
     }
-    uint16_t hwVersion = pd.get<uint16_t>();
-    uint16_t swVersion = pd.get<uint16_t>();
+    uint16_t hwVersion = (pd.get<uint8_t>() << 8) | pd.get<uint8_t>();
+    uint16_t swVersion = (pd.get<uint8_t>() << 8) | pd.get<uint8_t>();
 
-    log(string("  HW-Version: ") + intToString(hwVersion >> 8) + "." + intToString(hwVersion && 0xFF00));
-    log(string("  SW-Version: ") + intToString(swVersion >> 8) + "." + intToString(swVersion && 0xFF00));
+    log(string("  HW-Version: ") + intToString(hwVersion >> 8) + "." + intToString(hwVersion & 0x00FF));
+    log(string("  SW-Version: ") + intToString(swVersion >> 8) + "." + intToString(swVersion & 0x00FF));
 
     std::string name;
     for(int i = 0; i < 6; i++) {



More information about the dss-commits mailing list