title: php serial communication in linux
body: <p>I have installed xampp in fedora 13.I am trying to communicate with microcontroller through serial port using php serial class.
  My code is example.php </p>
  
  <pre><code>include("php_serial.class.php");
  $serial = new phpSerial();
  $serial-&gt;deviceSet("0");
  
  $serial-&gt;confBaudRate(9600); //Baud rate: 9600 
  $serial-&gt;confParity("none"); //Parity (this is the "N" in "8-N-1") 
  $serial-&gt;confCharacterLength(8); //Character length (this is the "8" in "8-N-1") 
  $serial-&gt;confStopBits(1); //Stop bits (this is the "1" in "8-N-1") 
  $serial-&gt;confFlowControl("none"); //Device does not support flow control of any kind, so set it to none.
  
  //Now we "open" the serial port so we can write to it
  $serial-&gt;deviceOpen();
  
  $serial-&gt;sendMessage("*1" ); //sleep(1); // echo "hi"; $serial-&gt;deviceClose();
  
  ?&gt;
  </code></pre>
  
  <p>The php script gets executed but gives the following warnings .</p>
  
  <p>Warning: Specified serial port is not valid in /opt/lampp/htdocs/xampp/php_serial.class.php on line 147
  Warning: Unable to set the baud rate : the device is either not set or opened in /opt/lampp/htdocs/xampp/php_serial.class.php on line 241
  Warning: Unable to set parity : the device is either not set or opened in /opt/lampp/htdocs/xampp/php_serial.class.php on line 295</p>
  
  <p>... I have used the command : chmod 0777 /dev/ttyUSB0  to give permissions .  I have also tried to add the apache user "prudhvi" to the dialout group by using command :
   $ usermod -a -G dialout prudhvi    </p>
  
  <p>But it doesnt work  .  When I send a command directly from the terminal using the command : echo 1 > /dev/ttyUSB0 it works and '1' is transmitted to the serial port . But using php I get the above warnings .</p>
  
  <p>I have used the "$whoami" to check name of user  and added that user "prudhvi" to the dialout group . It still doesnt work . Please help me guys. </p>