Ayuda con python, arduino y java

Hola antes que nada agradezco su interés por esta pregunta.

Bueno durante la programación he tenido una sorpresa que me ha tomado con la guardia complemente baja. Lo que me sucede es lo siguiente.

Tengo una pequeña aplicación en Java desde donde ejecuto un código de python (ese programa se comunica y envía comando al arduino), lo ejecuto vía Process.exec, y todo bien, el código realmente se esta ejecutando (lo puedo ver en el led del arduino).

Mi problema es que el programa python imprime a pantalla (print) y desde la aplicación trato de leer esa cadena, pero por alguna razón que desconozco la lectura de ese buffer de entrada (ya estando en java) no me ejecuta en tiempo real, es decir después de x tiempo de ejecución se "cargan al buffer" algunas lineas impresas por python pero no ejecutan en tiempo real (que es lo que quiero), ya hice en alguna ocasión la lectura de la terminal por python con java y todo bien (el proceso era realmente pequeño y por esa razón creo "sin fundamento" que es en tiempo real; también no utilizaba el puerto usb como en esta ocación). El proceso que estoy ejecutando en python es mover unos motores a pasos vía arduino y tarda en promedio 5 minutos como mínimo. Anexo el código que hago para ejecutar el código de python.
 

Utilice un nuevo hilo para leer la terminal con el fin de tener una lectura en tiempo real, pero todo parece que los datos llegan tarde al buffer de entrada.

Cabe mencionar que ejecuto mi aplicación python desde el terminal y se ejecuta correctamente, pero no se que esté pasando.

Agradezco de antemano su ayuda e interés.