Hi all -

I'm playing around with an attempt to do some serial communication from
within R to a microcontroller board.  I open a connection:

zz = file("/dev/ttyUSB0",open="a+") ## text mode

... when I execute

writeLines("0",con=zz)

I know the board receives the "0" because the board's serial comm LEDs light
up when submit the command at the R prompt.  However, if I want to open the
connection to the board in binary mode:

zz = file("/dev/ttyUSB0",open="a+b") ## binary mode

...submitting

writeBin(as.integer(9), con=zz, size=1)

doesn't do anything (no serial comm LEDs active) until AFTER I run a

readBin(zz,"integer")

I know the data arrives at the board correctly, because if the board
receives the right byte over the serial connection, it's been programmed to
light a particular LED.  The problem is, the LED doesn't light after the
writeBin command, as one would expect, but only after the subsequent readBin
command has been issued.  As I said, the text mode behaves as expected, with
communication occurring after the writeLines command, but there seems to be
something wrong with the way writeBin is working (or at least the way I'm
using it!).

Any pointers would be greatly appreciated!

Jake

> sessionInfo()
R version 2.6.1 (2007-11-26)
i686-pc-linux-gnu

locale:
LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] lars_0.9-7          randomForest_4.5-22 RBGL_1.14.0
[4] graph_1.16.1        cairoDevice_2.5

loaded via a namespace (and not attached):
[1] cluster_1.11.9  rcompgen_0.1-17 tools_2.6.1

	[[alternative HTML version deleted]]

