Iirc, you should not declare signals/slots in a QThread subclass. (Those won't be executed in the thread's context!)

On the other hand, I fail to see what the thread is for at all: signals/slots are asynchronous by nature, so a regular QObject-subclass (instead of the thread should work!)

Are you calling setConnectUDP() somewhere? Do you wait for the connection to be established before you start sending?