Answering myself again confirmed.
This is what is going on with the LCD.
I was wrong on some counts but....
The daemon is controlling the effect of the buttons totally, i.e it changes what is shown on the screen when a button is pressed. The it proforms the action selected.
So with the daemon stopped the screen will not update even when the buttons are pressed, it will just continue displaying the last thing sent to the screen.
I cat'd /dev/ttyS1 with the daemon stopped and sure enough it comes up when you press the bottons, each button has its own individual signal.
here I pressed all buttons one more than the others as you should see.
[root@gweb network-scripts]# cat /dev/ttyS1
Not sure how all this helps, I know I understand what is going on...just I can't code for it :oP