Difference between revisions of "XPicoWiFi/WebAPItoDevice"

From Lantronix Wiki!
Jump to navigation Jump to search
Line 41: Line 41:
 
==== serial.html ====
 
==== serial.html ====
 
[[File:serialhtml.png]]
 
[[File:serialhtml.png]]
 +
 
This example automatically queries the configuration (getLineConfig) of the selected serial port. If it's not set to None, it then uses setLineConfig to set the Protocol of the serial port to None, so that it can be used for the Web to Serial feature. Once configured, it allows you to click on a color on the screen and using AJAX it uses serialTransmit to send the name of the color out to the serial port. It also periodically checks the serial port for incoming data, and displays it on the web page.
 
This example automatically queries the configuration (getLineConfig) of the selected serial port. If it's not set to None, it then uses setLineConfig to set the Protocol of the serial port to None, so that it can be used for the Web to Serial feature. Once configured, it allows you to click on a color on the screen and using AJAX it uses serialTransmit to send the name of the color out to the serial port. It also periodically checks the serial port for incoming data, and displays it on the web page.

Revision as of 15:15, 18 May 2015

This is an Alpha Feature of 1.4 firmware. Features are subject to change. Please contact a Lantronix Field Applications Engineer to get firmware that supports this feature


Overview

WebAPItoDevice.png

The xPico Wi-Fi's web server has a function called WebAPI that allows you to monitor and control the xPico Wi-Fi and attached devices via HTTP calls to specific URLs. For example, the /export/config URL lets you view the current configuration of the xPico Wi-fi. The /export/status lets you view the current status, such as Wi-Fi signal strength, IP addresses, etc.

For the Web to Serial feature, the relevant URL is /action/status. This lets you directly send and receive data from the serial ports, as well as manipulate the GPIOs (CP) with an HTTP transaction, for example from Javascript.

WebAPI Status Actions

By using the WebAPI, you can use HTTP transactions (for example from Javascript) to Transmit and Receive data to the two serial ports, as well as to change and monitor the status of the CPs of the xPico Wi-fi. The data is sent urlencoded, and the response is in the XML format. For more details on how to use the WebAPI, please see Chapter 5 of the User Guide.

It is important to note that to use the Web to Serial function, the Line configuration must be set to None so that there is no conflict with other serial applications (like Mux or Monitor, for example).

Javascript Library

While the WebAPI can be used to affect configuration with simple HTTP transactions like a form submission, or from a smartphone App like the Lantronix xPico Wi-Fi Utilities Android App, one of the most common uses is to create a webapp that is stored in the xPico Wi-Fi's filesystem and served by the local web server. In that fashion, using Javascript, you can create a dynamic webapp to access the hardware in your end product easily.

xpwJslib on Github

To make it easy for you to deploy rich, dynamic webapps on the xPico Wi-Fi, Lantronix has made available a Javascript library to make it easy to use the WebAPI to conduct status Actions and send data back and forth to the serial port. You can find the library, with documentation on all of the functions on Github.

serialTransmit

Transmit ASCII data to one of the serial ports.

serialReceive

Receive ASCII data from one of the serial ports.

getLineConfig

Get a Javascript object with the configuration of a serial port, the library decodes the XML for you.

setLineConfig

Easily change serial port configuration with a Javascript object, the library builds the XML for you.

Available examples

serial.html

Serialhtml.png

This example automatically queries the configuration (getLineConfig) of the selected serial port. If it's not set to None, it then uses setLineConfig to set the Protocol of the serial port to None, so that it can be used for the Web to Serial feature. Once configured, it allows you to click on a color on the screen and using AJAX it uses serialTransmit to send the name of the color out to the serial port. It also periodically checks the serial port for incoming data, and displays it on the web page.