Release Notes for Gecko OS Edition 4

To install the latest version of Gecko OS on your device, use the DFU Update Command or Gecko OS Studio (GSS) .


Gecko OS 4.1.11 GA Release December 2019

This documents the changes between Gecko OS version 4.0 and Gecko OS version 4.1.

This Gecko OS release adds many new features and fixes.

This Gecko OS release adds a DMS provisioning feature .

New power management features have been added , including system shutdown .

A coredump facility has been added. See system.debug.coredump_enabled .

You can now specify a TLS client chain different to the server chain. See:

WLAN and SoftAP can now work concurrently, on different channels. The setup web command now works with WLAN/SoftAP concurrent mode. network_verify now works with WLAN/SoftAP concurrent on different channels. The Web app now supports password verification on the fly . See SoftAP Features and Variables .

SoftAP Wi-Fi RF transmit power can be managed independently from WLAN TX power. See softap.tx_power .

A Network Bridge Command API feature allows data streaming between an Ethernet connection and the device Soft Access Point. Inbound Ethernet packets become outbound Wi-Fi packets on the soft AP interface, and vice versa.

The softAP MAC filter allows MAC addresses to be whitelisted or blacklisted for connection to the softAP.

A new wlan.backoff variable allows specifying attenuation per Wi-Fi channel and modulation group.

A new wlan.cca_mode variable allows specifying the Clear Channel Assessment mode.

Wi-Fi PTA support is now provided. See wlan.coex.mode .

There is now a Native C API function to query Ethernet link speed: gos_ethernet_get_link_information() .

Timing with 31 microsecond resolution is now available.

GPS is now supported on the Hurricane Demo Platform. A Hurricane GPS SDK example has been added.

New and improved SDK app examples include:

Known Issues

Last Updated : December, 2019

Topic Description Solution or Workaround
Peripherals GOS permits configuration of more than one function associated with a peripheral, such as a USART. However the peripheral does not function correctly when this is done. Take care not to configure multiple functions for a single peripheral.
mDNS The mDNS service works with Bonjour, but not with LLMNR. See mdns.service . Install Bonjour.
Channel 14 Channel 14 is not supported by WGM160P. See wlan.scan.channel_mask No workaround

Changelog

Last Updated : December, 2019

The following changes were made.

Fixes and Improvements

Topic Description
BSSID Gecko OS can now connect to a visible or hidden network using BSSID .
Fixed: Memory corruption when using wlan.bssid for a nup .
Concurrent WLAN/SoftAP WLAN and SoftAP can now operate concurrently on different channels. See SoftAP Features and Variables .
The setup_web command now works with WLAN/SoftAP concurrent mode.
network_verify now works with WLAN/SoftAP concurrent on different channels
Concurrency and Web App The web app now calls the network_verify command to verify the password for the selected SSID.
Example Apps ArduCam SDK example apps, hurricane/arducam and hurricane/security_camera have been added.
gos_settings_get_str fault Fixed: Hard fault with calls to gos_settings_get_str .
HTTPS server The HTTPS server no longer Hard Faults when simultaneously connecting 2 clients
PWMs Fixed an issue where pwm_update did not work for GPIOs > 10
Fixed an issue where GPIOs 2,3 and 20 output frequency was double the value set.
Fixed a problem where GPIOs 16 and 18 could not be used independently.
SDK GSS The GSS project .launch file now regenerates.
SDK OSX SDK Apps now build on OSX.
Debugging now works for the SDK on OSX High Sierra.
Make login on OSX now calls GSS.
Shutdown System shutdown is available as a power saving option.
SPI Fixed: SPI stream write hangs on buffer size smaller than 16.
Fixed: Hard fault on SPI stream_close .
Timer Timing with 31 microsecond resolution is now available. See gos_wait_microseconds .
WPA WPA/WPA2 security has been added to the SoftAP.
WLAN Fixed: If wlan.scan.channel_mask is set to 0x1FFF , wlan.ssid is overwritten.
HFXO GPIOs Fixed: WGM160P HFXO GPIOs ( 12 , 13 ) are now correctly listed by gpio.usage
Concurrent WLAN and SoftAP Fixed an issue where the system could crash if WLAN started on a different channel to SoftAP. See SoftAP Features and Variables
Network verification The webapp now supports network verification, transparently to the user.
External Debugger GSS now supports download, debug, and other functions using an external adapter, such as an SWD (Serial Wire Debug) or JTAG (Joint Test Action Group) debugger.
MQTT Example App Many of the instabilities reported against the MQTT example app released in Gecko OS 4.0 have been fixed or reduced.
MQTT Keepalive The keep-alive feature in the MQTT stack is now fixed as per MQTT standard. Client waits for mqtt.keep_alive_interval since last ping request sent (PINGREQ), then force closes the connection. If ping response (PINGRESP) is received within this period, the timer is reset and connection is kept open.
MQTT Secure Element TLS support In the MQTT library, the struct tcp_client_config_t now has a new use_secure_element entry
gos_tcp_config_t Assigning gos_tls_certificates_t to gos_tcp_config_t now successfully sets CA cert, client key and cert parameters.
DNS WLAN DNS query no longer fails if Ethernet enabled but unavailable.

Commands Changed

Change Description
faults_reset Added --coredumps option

Commands Added

Change Description
dms_provision Initiate the DMS provisioning procedure. See DMS Provisioning .
network_bridge The network bridge feature allows streaming from ethernet to SoftAP.
shutdown See shutdown power saving .
softap_mac_filter_add Add a MAC address to the soft AP MAC filter.
softap_mac_filter_clear Clear all addresses from the soft AP MAC filter.
softap_mac_filter_remove Remove a MAC address from the soft AP MAC filter.

Variables Added

Change Description
dms.provision.status Read the current status of DMS provisioning. See DMS Provisioning .
dms.provision.token Set the DMS provisioning token. See DMS Provisioning .
http.server.tls_peer_cert Specify TLS client chain different to server chain.
network.bridge.auto_start See network bridge .
network.bridge.info See network bridge .
network.bridge.interface_1 Set first network bridge interface.
network.bridge.interface_2 Set second network bridge interface.
softap.mac_filter.enabled Enable/disabled softAP MAC filter.
softap.mac_filter.info List the addresses in the softAP MAC filter.
softap.mac_filter.mode Choose whitelist or blacklist mode for the softAP MAC filter.
softap.tx_power Manage Wi-Fi RF transmit power independently for SoftAP interface.
system.debug.coredump_enabled Enable/disable coredump feature.
system.powersave.idle_timeout Set timeout before system sleeps according to system.powersave.mode setting
system.powersave.wakeup_gpio_level_mask Specify GPIO levels for shutdown wakeup.
system.powersave.wakeup_gpio_mask Specify GPIOs to enable for shutdown wakeup.
system.shutdown.wakeup_gpio_level_mask See System Shutdown .
system.shutdown.wakeup_gpio_mask See System Shutdown .
system.shutdown.wakeup_timeout See System Shutdown .
tcp.server.tls_peer_cert Specify TLS client chain different to server chain.
uart.powersave.mode See power management features .
wlan.backoff Specify attenuation per Wi-Fi channel and modulation group.
wlan.cca_mode Determine WLAN clear channel assessment (CCA) mode.
wlan.coex.mode Enable Wi-Fi PTA support.
wlan.powersave.listen_interval Specify beacon or DTIM skip according to wlan.powersave.mode setting.
wlan.powersave.mode Configure WLAN powersave.

Variables Changed

Change Description
system.powersave.mode Altered powersave settings.
system.uuid The UUID is settable under specific circumstances.