Release Notes for ZentriOS-WL-1.5

ZentriOS-WL-1.5 fixes a number of issues and adds new features.

The ota command now accepts a -q argument, to query whether an update is available without performing the OTA.

The http_get and http_post commands now accept additional parameters.

The existing variable tcp.client.connect_timeout is now fully functional.

A new variable, network.tls.handshake_timeout has been added.

New checks determine whether an attempted OTA is too large or has insufficient flash space available. OTA failure is reported correctly, and error messages indicate the cause of an OTA failure.

There are general improvements and a number of issues have been fixed.

Known Issues (v1.5.0)

Last Updated : September, 2018

Known issues from previous versions have been fixed except for the following.

DescriptionSolution or Workaround
This issue occurs on the Blowfish AMW037 evaluation board, or on a custom board using a AMW0x7 module, where GPIO5 is floating. Because setup.gpio.control_gpio defaults to GPIO5, setup mode may be invoked on boot or reset, if the floating GPIO5 registers high.
When setup mode is in operation, other operations my fail, such as running the network_up command.
Set setup.gpio.control_gpio to -1. This will be the default in future WL versions.
Running the ota command on web app console causes a loop that continually checks ota but never actually updates. This persists through power cycles.Run the ota command from the serial console.
In STREAM mode, the UDP server and UDP client do not work correctly. The UDP Server does not start automatically when udp.server.auto_start is enabled. The UDP client does start when udp.client.auto_start is enabled, but does not receive and send data correctly.There is no workaround.
The Captive Portal feature does not redirect correctly when connecting to the Soft AP from a Windows 10 system.Type in the required URL after joining the Soft AP network. For example, when using the setup web feature, type the URL

Fixes and Improvements

Command ResponsesThe consistency and accuracy of command responses is improved. In machine format, headers now indicate the correct message size. The 'help commands' command no longer returns the message 'Command failed'.
HTTP GET, POSThttp_get and http_post now allow a port in the URL, and http_post correctly sends a POST request.
http_get and http_post now support the -long_url parameter.
http_post now correctly uses chunking by default, sending the default HTTP header Transfer-Encoding : chunked, unless the -l is used to replace the header.
OTAZentriOS-WL now verifies that there is sufficient space in the file system before starting OTA. If there is insufficient flash space, the OTA does not commence and an error message is returned indicating flash space is inadequate. See the ota command.
Product bundles are now limited to 30 files, each with a maximum filename length of 30 characters. If an OTA is attempted with bundle file number and filename length outside this limit, OTA does not commence and an error message is returned.
OTA now correctly reports OTA failed if network fails while OTA in progress.
OTA now runs without error from the WebApp console tab.
An OTA failure message is printed if the device fails to join the network after the maximum retries.
Stream modeStream mode, using IOCTRL, now correctly disconnects TCP client when the ioconn GPIO is cleared.
TLSNew error messages provide more detail to determine the cause of a TLS failure.
TLS clienttls_client no longer fails when connected to certain hosts. For improved TLS performance and debugging, ZentriOS-WL now:
  • Performs an RSA handshake
  • Has an increased maximum fragment length of 4k
  • Has improved TLS debug logs
  • Requires verification in auth mode
UDP broadcastIssuing the command udp_client now correctly results in broadcast to the local network.
Issuing the command udp_client no longer results in an additional empty response line
Variable DefaultsVariable defaults now correctly match the defaults shown in the variable documentation.
Web SetupSetup web can now be initiated by the GPIO specified in setup.gpio.control_gpio, regardless of the value of wlan.auto_join.enabled.
WLAN passkeyThe wlan.passkey variable can now include spaces and quotes.

Commands Added


Commands Changed

http_gethttp_get now supports the -long_url parameter
http_posthttp_post now supports the -long_url parameter
otaThe ota command has a new -q (query) option, to determine if an update is available without applying it.

Variables Added

network.tls.handshake_timeoutThis variable controls the TLS handshake timeout, independently of the tcp.client.connect_timeout .

Variables Changed

tcp.client.connect_timeoutThe tcp.client.connect_timeout is now fully functional as documented.