diff --git a/dnarbd/readers/cadnano_segments.py b/dnarbd/readers/cadnano_segments.py
index a70f7d7a3df227080dbd230887e15d4cb22d0ade..fde1d8faaf7ed0ef0f33b0e3d7e8c54946075b4a 100644
--- a/dnarbd/readers/cadnano_segments.py
+++ b/dnarbd/readers/cadnano_segments.py
@@ -209,7 +209,11 @@ class cadnano_part(SegmentModel):
             # TODO add code to encode Parts with ARBITRARY point configurations
             raise NotImplementedError("Not implemented")
         else:
-            vh_props, origins = part.helixPropertiesAndOrigins()
+            try:
+                vh_props, origins = part.helixPropertiesAndOrigins()
+            except:
+                origins = {hid:part.getVirtualHelixOrigin(hid)[:2] for hid in part.getidNums()}
+
         self.origins = origins
 
         vh_list = []