got it so the BBB at least detects when the cape has out of date code
diff --git a/bbb_cape/src/cape/fill_packet.c b/bbb_cape/src/cape/fill_packet.c
index 8d1f72a..a0b2b13 100644
--- a/bbb_cape/src/cape/fill_packet.c
+++ b/bbb_cape/src/cape/fill_packet.c
@@ -80,9 +80,14 @@
   encoder_init();
   digital_init();
 
-  flash_checksum =
-      crc_calculate((void *)MAIN_FLASH_START,
-                    (size_t)(MAIN_FLASH_END - MAIN_FLASH_START) / 4);
+  {
+    extern uint32_t __flash_end, __data_start__, __data_end__;
+    const uint32_t main_flash_end = (uint32_t) & __flash_end + (uint32_t) &
+                                    __data_end__ - (uint32_t) & __data_start__;
+    flash_checksum =
+        crc_calculate((void *)MAIN_FLASH_START,
+                      (size_t)(main_flash_end - MAIN_FLASH_START) / 4);
+  }
 
   led_set(LED_ERR, 0);
   gyro_init();