diff --git a/changelog.txt b/changelog.txt
--- a/changelog.txt
+++ b/changelog.txt
@@ -2,3 +2,6 @@
 - convert to using `linear` V3, M33, Quaternion types
 - doctests
 - fix long unknown bug: rotateXyzAbout{X,Y,Z} was rotating opposite direction from intended
+
+0.2.1.1
+- Serialize a => Serialize (Euler a)
diff --git a/spatial-math.cabal b/spatial-math.cabal
--- a/spatial-math.cabal
+++ b/spatial-math.cabal
@@ -1,5 +1,5 @@
 name:                spatial-math
-version:             0.2.1.0
+version:             0.2.1.1
 synopsis:            3d math including quaternions/euler angles/dcms and utility functions
 description:         This is a port of my 'mathlib' C library: `https://github.com/ghorn/mathlib`
 license:             BSD3
diff --git a/src/Types.hs b/src/Types.hs
--- a/src/Types.hs
+++ b/src/Types.hs
@@ -16,6 +16,7 @@
 import Data.Traversable ( Traversable )
 #if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ >= 702
 import GHC.Generics (Generic)
+import Data.Serialize ( Serialize )
 #endif
 #if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ >= 706
 import GHC.Generics (Generic1)
@@ -47,3 +48,7 @@
 deriving instance Typeable1 Euler
 #endif
 
+
+#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ >= 702
+instance Serialize a => Serialize (Euler a)
+#endif
