diff --git a/server/trackdirect/parser/AprsISConnection.py b/server/trackdirect/parser/AprsISConnection.py
index 4abeb0c2d669ae8ebd7355c7a597de4c12c33666..b5afe62c4be9a66c83ad2512bb402b014a49a74d 100644
--- a/server/trackdirect/parser/AprsISConnection.py
+++ b/server/trackdirect/parser/AprsISConnection.py
@@ -59,10 +59,9 @@ class AprsISConnection(aprslib.IS):
"""
def filterCallback(line):
try:
- # py3: this seems to somehow break the packets ?
- # line = line.replace('\x00', '')
- # just do a decode to do str->bytes
+ # decode first then replace
line = line.decode()
+ line = line.replace('\x00', '')
except UnicodeError as e:
# string is not UTF-8
return