Serial port polling
I am building a shell script on a Dreambox (Sat receiver).
What I need to do is sending a command through the serial port to steer my dish. This was easy to do and it worked with no problems at first attempt. I need to wait for the answer from the other device from the same port (when the dish is in the new desired position. It can take from few seconds to 30-40 seconds), and, after that and only after that, I can continue with the other commands of the script. I therefore need to poll the serial port and read what the other device answers. Possibly with the least load on the CPU of the machine. This is what I still cannot do and I would really be very thankful if you could give me a hint on how to do it... The shell has a very limited number of commands. It is just a subset of the usual shells. Therefore I need to use very basic commands (compiling a C program is an option, but I would need to delve in crosscompiling and other quite difficult things, for me at least). I thank you in advance for your help! Sneezie |
Well you only need to print out the contents of the tty file and watch for it match a specific string. You should be able to do something like:
Code:
cat /dev/ttyS0 | grep response |
Quote:
|
Sending a command should look something like:
Code:
echo "command" > /dev/ttyS0 |
Quote:
|
All times are GMT -5. The time now is 04:19 AM. |