ich hab mir jetzt einfach nen timer-interrupt gebastelt, der nach beendigung der read()-routine zurückgesetzt wird. wenn ein gewisses timeout erreicht wurde wird das programm neu initialisiert, ist ein workaround, aber für meine zwecke ok.

danke für die antworten!