I have a piece of simple code that works on a Windows - WAMP environment, e.g.
<?php
`mode com3: BAUD=38400 PARITY=N data=8 stop=1 xon=off`;
file_put_contents(com3, chr(1).chr(255).chr(1).chr(4).chr(64).chr(5));
?>
It connects via a USB cable (using USB-Serial drivers) to a circuit-board to light some LEDs, and it works fine - so similarly windows software like 232Analyser, can connect to COM3 and send code in DEC like 1,255,255,255,255,5, and light the LEDs. The number 255, is a DEC number from: 1,2,4,8,16,32,64,128,255 which will light a certain LED depending on which number is called.
Anyway, the code above works fine on Windows, and lights LEDs by calling this PHP file. So can call a URL like: http://localhost/lightled.php which works ok.
Now I need it to work via Linux, on a Raspberry Pi, so I have just installed standard Raspberry Linux, and Apache with PHP.
Then attached the USB cable, and it appears as /dev/ttyUSB0 I have then CHMOD 777 /dev/ttyUSB0
And changed the PHP code to:
<?php
`mode /dev/ttyUSB0: BAUD=38400 PARITY=N data=8 stop=1 xon=off`;
file_put_contents('/dev/ttyUSB0', chr(1).chr(255).chr(1).chr(4).chr(64).chr(5));
?>
However calling this file on Linux in a browser is not Lighting the LEDs, as it does on Windows.
Now when I call this file it goes through with no errors, without chmod 777, it gave a permission denied error. So it seems like it goes through ok, but something else is wrong.
- So question is anyone know how to make it work on Linux, it might be I am calling the USB wrong, or Raspberry Linux needs some kind of drivers, or " `mode " needs to be defined differently ...or maybe the decimal/binary code sent is not right like "chr(2)" etc. needs to be different and wont be sent in same way on a LAMP setup.
Any ideas on what I can try?
Thanks,
Aku Foo.