Вы пытаетесь создать кортеж, но вы просто заключаете строку в скобки :)
Добавьте дополнительный ',':
dRecieved = connFile.readline()
processThread = threading.Thread(target=processLine, args=(dRecieved,)) # <- note extra ','
processThread.start()
Или используйте скобки, чтобы составить список:
dRecieved = connFile.readline()
processThread = threading.Thread(target=processLine, args=[dRecieved]) # <- 1 element list
processThread.start()
Если вы заметили, из трассировки стека: self .__ target (* self .__ args, ** self .__ kwargs)
* self .__ args
превращает вашу строку в список символов, передавая их processLine
функция. Если вы передадите ему список из одного элемента, он передаст этот элемент в качестве первого аргумента - в вашем случае - строку.