Trond Enger / d7a_1x

Fork of d7a_1x by WizziLab

Revision:
87:9b885d12dbb4
Parent:
81:c68a47483525
Child:
90:eaf980532613
diff -r e5388f1b8ed9 -r 9b885d12dbb4 src/d7a.cpp
--- a/src/d7a.cpp	Fri Jan 06 15:33:26 2017 +0000
+++ b/src/d7a.cpp	Mon Mar 13 11:56:35 2017 +0000
@@ -52,6 +52,26 @@
         g_open = true;
         g_started = true;
         
+        // Check modem revision
+        d7a_revision_t rev;
+    
+        d7a_msg_t** msg;
+    
+        msg = d7a_read(2, 0, sizeof(d7a_revision_t));
+        ASSERT(msg[0]->err >= D7A_ERR_NONE, "Failed to read modem version. err %d\r\n", msg[0]->err);
+        ASSERT(msg[0]->data, "No data in response\r\n");
+        memcpy(&rev, msg[0]->data->buf, sizeof(d7a_revision_t));
+        d7a_free_msg(msg);
+        
+        if (rev.fw_version.major == 4 && rev.fw_version.minor == 6)
+        {
+            d7a_alp_set_root_key_size(8);
+        }
+        else
+        {
+            d7a_alp_set_root_key_size(16);
+        }
+    
     } while (0);
     
     WARNING(err == D7A_ERR_NONE, "%s err %d\r\n", __FUNCTION__, err);