Got the streamout working from different programs!! You have to use a Yield after calling the other program.
It get harder for old dogs to learn new tricks so bare with me

I do get these messages now
[Message] CommandRead@9 M331 Asynchronous instruction STREAMIN used in code-block with 6 yielding instructions (YIELD at @24 YIELD at @144 YIELD at @231 YIELD at @289 YIELD at @304...)
[Message] CommandRead@409 M331 Asynchronous instruction STREAMOUT used in code-block with 6 yielding instructions (YIELD at @24 YIELD at @144 YIELD at @231 YIELD at @289 YIELD at @304...)
[Message] CommandRead@508 M331 Asynchronous instruction STREAMOUT used in code-block with 6 yielding instructions (YIELD at @24 YIELD at @144 YIELD at @231 YIELD at @289 YIELD at @304...)