Thanks for the reply.
Well there are two ways that I am trying.
The first is just through a shell using echo:
echo ls > /proc/<pid>/fd/0
The second way I have tried is by opening the FD in some C code and writing "ls\n" to it e.g.
fd = open("/proc/<pid>/fd/0", O_WRONLY);
write(fd, "ls\n", 3);
Both methods appear to print "ls" and a newline in the target terminal.
Pressing enter in the shell then starts a new line ready for input instead of processing the "ls" command.