diff --git a/geomagio/edge/EdgeFactory.py b/geomagio/edge/EdgeFactory.py
index bdecb483ba66f262149f17d93b8af36cae13eb7d..4602b0b9898c5c520666200e13ee6dc2f5c57012 100644
--- a/geomagio/edge/EdgeFactory.py
+++ b/geomagio/edge/EdgeFactory.py
@@ -484,9 +484,14 @@ class EdgeFactory(TimeseriesFactory):
         location = self._get_edge_location(observatory, channel, type, interval)
         network = self._get_edge_network(observatory, channel, type, interval)
         edge_channel = self._get_edge_channel(observatory, channel, type, interval)
-        data = self.client.get_waveforms(
-            network, station, location, edge_channel, starttime, endtime
-        )
+        try:
+            data = self.client.get_waveforms(
+                network, station, location, edge_channel, starttime, endtime
+            )
+        except TypeError:
+            # get_waveforms() fails if no data is returned from Edge
+            data = obspy.core.Stream()
+
         # make sure data is 32bit int
         for trace in data:
             trace.data = trace.data.astype("i4")