diff --git a/geomagio/edge/MiniSeedInputClient.py b/geomagio/edge/MiniSeedInputClient.py
index 9d83701871b524f5d4cff7eb9dc4684e392d8fc8..f89f336b3345eb01cf6585d68c3defb17b9e88b2 100644
--- a/geomagio/edge/MiniSeedInputClient.py
+++ b/geomagio/edge/MiniSeedInputClient.py
@@ -20,7 +20,7 @@ class MiniSeedInputClient(object):
         Floating point precision for output data
     """
 
-    def __init__(self, host, port=2061, encoding="FLOAT32"):
+    def __init__(self, host, port=2061, encoding="float32"):
         self.host = host
         self.port = port
         self.encoding = encoding
@@ -74,6 +74,13 @@ class MiniSeedInputClient(object):
             self.connect()
         # convert stream to miniseed
         buf = io.BytesIO()
+        stream = self._pre_process(stream)
         stream.write(buf, encoding=self.encoding, format="MSEED", reclen=512)
         # send data
         self.socket.sendall(buf.getvalue())
+
+    def _pre_process(self, stream):
+        for trace in stream:
+            if trace.data.dtype != self.encoding:
+                trace.data = trace.data.astype(self.encoding)
+        return stream