niewłasciwe zakończenie pliku < miałem identyczny problem gdy pisałem jakiś program w G-Code na komputerze i kopiowałem na maszynę gdy program miał dużo bloków to działał normalnie aż nie dojechał pod koniec pliku i wywalał błąd. Problemem w moim przypadku było "niewłasciwe zakończenie pliku"

a mówiąc jaśniej ostatnie znaki w moich programach to były:
N209 ......
N210 M30; <TUTAJ KONIEC PLIKU
rozwiązaniem był taki zapis:
N209 ......
N210 M30;
<TUTAJ KONIEC PLIKU
Czyli za M30; dodatkowo musiał być (CR+LF) ("enter")
Nie mam pojęcia jakim cudem mogło to wyparować z Twoich cykli i czy to jest przyczyną Twojego problemu ale skoro to tylko na gwintowaniu to można sprawdzić te cykle co mają na końcu.