ID: 49976
Updated by: johannes@php.net
Reported By: rpiccini at software4u dot it
-Status: Open
+Status: Feedback
Bug Type: Filesystem function related
Operating System: WIN XP / UBUNTU 9.04
PHP Version: 5.2.11
New Comment:
For using the serial port from linux I'd suggest to take a look at the
dio extension so you can set baud rate, parity, ... via
dio_tcsetattr()
Are you sure your device really returns anything? did you try other
serial port applications?
Previous Comments:
------------------------------------------------------------------------
[2009-10-23 17:43:08] rpiccini at software4u dot it
Description:
------------
Either on WIN XP or UBUNTU 9.0 can't read back any data from serial
port after correctly written to.
I'm trying to talk to a fiscal printer trough a custom protocol based
on ACK/NACK technique (send data -> receive answer -> respond to answer
-> ...)
With a serial port scanner (and from the ticket that are correctly
printed) I can see that the sent data are well received from fiscal
printer.
But any "replay" to sent data (which are present if data are sent to
serial port from other kind of software/programming languages) are
present.
The PHP Version is 5.2.11.
There were a similar bug report on
http://bugs.php.net/bug.php?id=35531
but its state is "closed" (even if the case history is very similar and
the problem persists).
Reproduce code:
---------------
<?php
// on UBUNTU
$fp = fopen('/dev/ttyS0','r+');
// on WIN XP
/*fp = fopen('COM1:','r+');*/
stream_set_timeout($fp, 0, 100);
stream_set_blocking($fp,0);
$stx = chr(2);
$etx = chr(3);
$string = $stx."030301346".$etx; // command to eject paper
fputs($fp,$string);
echo "SENT: ".$string."<br />\n"; // display string sent to
serial port
$buffer = fread($fp,128); // tested with several int
values
echo "RECEIVED: ".$buffer."<br />\n"; // display NOTHING!
fclose($fp);
?>
Expected result:
----------------
a correct ACK (chr(6)) or an incorrect NACK (chr(15)) from serial port
(sent by the fiscal printer)
Actual result:
--------------
NOTHING (no a single char)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=49976&edit=1