Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JavaScript/JQuery communicate with SerialPort/COM1

is it possible to force any communication from e.g. Javascript/JQuery to any serial comport?!

google is not able to answer that question.. but anyway it should be possible.. env is firefox in my case..

ideas/knowledge is very welcome.

kindly tape

like image 714
Alex Tape Avatar asked Aug 22 '13 11:08

Alex Tape


5 Answers

I think it is possible..

Look to: jUART, Cross platform browser plugin for serial port communication from JavaScript https://github.com/billhsu/jUART

like image 99
kimstik Avatar answered Oct 21 '22 14:10

kimstik


with chrome it's possible ,

here is the link for documentations : https://developer.chrome.com/apps/app_serial

or

http://www.fabiobiondi.com/blog/2014/02/html5-chrome-packaged-apps-and-arduino-bidirectional-communication-via-serial/

like image 24
Mimouni Avatar answered Oct 21 '22 14:10

Mimouni


Yes you can, but not with a typical browser. Browsers are sandboxed to not have access to the local file system (except cookies) so that malicious sites can't read from / write to your hard drive. As far as I know there is no way to override this behvior (short of writing your own browser).

However, this can be done in JavaScript using Node.js. It runs as a process rather than in a browser window and can access the file system. Specifically, there is already an npm module (node library) for serial communication: https://github.com/voodootikigod/node-serialport

Alternatively, you could always just spin up a local web server (via node.js, php, rails, etc). Web servers can access file systems, and therefore should be able to access serial ports.

Hope this helps.

like image 4
markle976 Avatar answered Oct 21 '22 15:10

markle976


Update to this thread, if you are using chrome you may use Web Serial to communicate using web to serial port.

https://chromestatus.com/feature/6577673212002304
https://web.dev/serial/

like image 1
espongha Avatar answered Oct 21 '22 16:10

espongha


kimstik's suggestion, using the jUART plugin for the browser is an excellent solution.

Another possibility is to use a middleware, that facilitates the serial communication and provides a web interface, that JavaScript can interface with using AJAX requests.

Python could be used, e.g. a script using a combination of pySerial and python-bobo.

like image 1
Matthias Avatar answered Oct 21 '22 15:10

Matthias