
# Release Notes PN 93000760_F
## Digi XBee Gateway Cellular
## 82003484_E EOS
## Firmware Version 3.2.22.3
## January 19, 2016

## INTRODUCTION
    This is a release of firmware for the Digi XBee Gateway ZB. 

    The XBee Gateway is a small ZigBee to IP gateway that provides low-cost 
    IP networking of RF devices and sensor networks. Featuring an easy 
    development environment, XBee Gateway enables custom applications to run 
    locally while interfacing across existing Ethernet/Wi-Fi networks for WAN 
    connectivity to cloud-based software applications.

    The XBee Gateway products feature an end-to-end development environment 
    based on the iDigi® Dia framework, allowing for rapid M2M-specific 
    application development on the industry standard Python scripting engine. 
    Digi ESP provides an IDE featuring device detection, debugging, compiling 
    and downloading of iDigi Dia/Python code to Digi gateways. 

    Digi Device Cloud, a Digi-hosted remote management service, offers a 
    platform for secure, scalable access to an unlimited number of remote 
    assets. In addition, the Device Cloud web services provide seamless integration 
    from Digi gateways into customer back office applications.


## SUPPORTED PRODUCTS
    X2E-Z4C-H1-A ConnectPort X2e ZB GSM  (UMTS)
    X2E-Z3C-H2-W ConnectPort X2e ZB GSM  (HSPA) International
    X2E-Z4C-D1-A ConnectPort X2e ZB EVDO (Sprint)
    X2E-Z4C-D2-A ConnectPort X2e ZB EVDO (Verizon)

Firmware Version 3.2.22.3 2016-01-19
------------------------------------

### ENHANCEMENTS
* [XBGW-2343] Reconfigure devices using 'etherios.com' domains
* [XBGW-2354] Use Digi hosted time servers for time synchronization
* [DCWS-17] Migrate to OpenSSL 1.0.1p
* [DCWS-81] No longer allow TLS sessions below version 1.2

### BUG FIXES
* [XBGW-2542] Fix memory leak on network reconfiguration

### ADDITIONAL INFORMATION
  NOTE: if you have firmware older than 3.2.0 on your device, you must install 
  3.2.0.16 before you can upgrade to this version.

Firmware Version 3.2.12.1 2015-05-01
------------------------------------

### HIGHLIGHTED PRODUCT CHANGES
* Security updates to SSL and certficates.

### ENHANCEMENTS
* [XBGW-1344] Updated OpenSSL to 1.0.1m.
* [DBL-855] Increased cipher strength on Cherokee certificates.
* [DBL-824] Updated product to meet new ETSI requirements.
* [DBL-669] XBee log level is now configurable.
* [DBL-657] DNS messages reduced in device cloud system log.

### BUG FIXES
* [DBL-795] Disabled SSLv3 due to vulnerability CVE-2014-3566.
* [DBL-666] Hostname appeared as "(none)" in system log.

### ADDITIONAL INFORMATION
  NOTE: if you have firmware older than 3.2.0 on your device, you must install 
  3.2.0.16 before you can upgrade to this version.

Firmware Version 3.2.11.7 2015-27-2
------------------------------------

### HIGHLIGHTED PRODUCT CHANGES
* Rebranded product to XBee Gateway
* Added XBee Gateway Python application
* New XBee firmware: version 4055. 
    This was updated to support a new Power Amplifier in domestic versions
    See XBee radio release notes for more information
* [DBL-795] Remove vulnerability to CVE-2014-3566 (poodle SSLv3 vulnerability)

### ENHANCEMENTS
* Add support for V3 hardware
* Added support for new DDR memories.
* Support for new Spansion flash chips 
* Configurable XBee Radio logging level, with reduced logging by default.
* Improved firmware update messages in event log

### BUG FIXES
* [DBL-839] Update SMS opt-in short code to 43444.
* [DBL-753] Time client does not refresh DNS before requesting time
* [DBL-787] Web UI not able to set dates in October
* [DBL-202] Update DHCP client to check for existing address on network
* [DBL-510] Fixed a bug that prevented a python program from using ZigBee 
  Sockets and HTTPS
* [DBL-722] Update License information on Web UI

### KNOWN ISSUES
* None.

### DOCUMENTATION ERRATA
* None.

### ADDITIONAL INFORMATION
* None.


Firmware Version 3.2.2.37 2014-04-16
------------------------------------

### HIGHLIGHTED PRODUCT CHANGES
* Add support for Micrel KSZ8081 10Base-T/100Base-TX Ethernet physical-layer 
  transceiver Remove SSL HeartBeat extension from openssl library (HeartBleed 
  workaround for openssl CVE-2014-0160)

### ENHANCEMENTS
* [DBL-545] - Add support for Micrel KSZ8081 Ethernet PHY

### BUG FIXES
* [DBL-624] - Update OpenSSL to resolve the 'heartbleed' vulnerability
* [DBL-614] - Time backs up on reboot until NTP time received
      
### KNOWN ISSUES
* None.

### DOCUMENTATION ERRATA
* None.

### ADDITIONAL INFORMATION
* NOTE: if you have firmware older than 3.2.0 on your device, you must install 
  3.2.0.6 before you can upgrade to this version.


Firmware Version 3.2.2.24 2014-01-07
------------------------------------

### HIGHLIGHTED PRODUCT CHANGES
<pre>
XBee-Ember Release: v4x43
EmberZNet  Release: v4.6.5.1 stack
Based on 4x42
</pre>
Features:
* None

### Fixes:
* Fixed OTA recovery issue where Bootloader ACK message was being truncated due
  to channel being switched too early for the ACK message to be sent to the 
  target node.

### Application Notes:
1. If you change from ZB to SE firmware on an S2C, you have to do an ATRE.  
   Otherwise, you can get the XBee into a state where it always report an ATAI 
   value of 0xA8.
2. A sleepy device with I/O sampling enabled will wait for the APS ACK before 
   going to sleep. This will force the sleepy device to stay awake until getting
   the ACK or the ACK timeout has elasped. The I/O sampling ACK requirement can
   be disable by setting ATDO option bit5 "Disable ACK for I/O Sampling".

### ENHANCEMENTS
* [DBL-135]
  - Add feedback to wifi wizard to help user enter the correct information 
    (#40742)
  - Wi-Fi configuration enhancement   
* [DBL-184]
  - removed 'iDigi Service Configuration' from 'Ethernet Service Configuration'
* [DBL-188]
  - Added disable addp service to webui
* [DBL-370]
  - Time Server traffic reduction for cellular devices. Added standard and high
    precision selections
  - Added Enable/Disable Network interfaces selection on Web UI
  - Log password changes in event file 
  - Added SMS Status Page 
  - Legal Notice on new page or tab
* [CPX2E-273] 
  - Added Web Page for sprint provisioning.

### BUG FIXES
* [CPX2e-259] 
  - CPX2e Cellular units fail to Register/Provision to Verizonnetwork
* [DBL-143]
  - Change CLI command "xbee child_table" to use own address by default (#43444)
* [DBL-460]
  - Security:  Hole found in python SSL - CVE-2013-4328
    + Mandriva Linux Security Advisory MDVSA-2013:214
    + http://www.mandriva.com/en/support/security/
* [DBL-354]
  - Security:  Ignore SRR packets
* [DBL-355]
  - Security:  disabled ICMP redirects
* [DBL-444]
  - Bug fix in Basic Web UI Authentication
* [DBL-425]
  - Reflected Cross Site Scripting in Device Configuration Error Mechanism 
* [DBL-459]
  - If you log in to web GUI with python/no password you have to restart browser
* [DBL-468]
  - Deadlock at a lower level in Python
  - Do not reboot if a firmware update fails
  - Fixed issue with GPS status RCI 
  - Fix issue with WEP / WPA PSK 
* [DBL-437]
  - Fixed problem where XBee communications would fail under multi-threaded 
    operations

### KNOWN ISSUES
  None.

### DOCUMENTATION ERRATA
  None.

### ADDITIONAL INFORMATION
  NOTE: if you have firmware older than 3.2.0 on your device, you must install 
        3.2.0.6 before you can upgrade to this version.

HISTORY
-------


Firmware Version 3.2.0.6
-------------------------

### HIGHLIGHTED PRODUCT CHANGES
* Updated XBee firmware to 4041, previous version was 401E
<pre>
XBee-Ember Release: v4x41
EmberZNet  Release: v4.6.5.1 stack
Based on 4x40
Build Date May 30, 2013
</pre>
* TxOption 0x01 disables retries (and route repair).  RxOption 0x01 indicates 
  transmitter disabled retries.
* BD range increased from 0-7 to 0-0x0A
* nonstandard baud rates are permitted but not guaranteed
* NI, DN, ND string parameters support upper and lower case
* self addressed fragmentable messages now return the self-addresses Tx Status 
  code (0x23) instead of simply success (0x00)
* ND with string parameter no longer exits command mode after first response
* ND with string parameter now ignores any subsequent responses after first 
  response
<pre>
XBee-Ember Release: v4x40
EmberZNet  Release: v4.6.5.1 stack
Based on 4x32 and 5x32
Build Date May 8, 2013
</pre>
* Implemented binding and multicasting.
* Implemented new AT&X command to clear the binding and group tables
* Implemented new Tx options for indirect addressing thru binding (0x04) and use
  multicast (0x08).
* Implemented one button build for ZB and SE targets.  Release folders are 
  created and XCTU update folder is updated.
<pre>
XBee-Ember Release: v4x32
EmberZNet  Release: v4.6.5.1 stack
Based on 4x24  
</pre>

### New features:
* Upgraded Ember stack from 4.2.0 to 4.6.5.1, this required major restructuring
  of the Application code due to Ember Application Framework AFv1 to AFv2 design
  changes.
* Implemented 5 sec break for restoring device default settings.  
  + The 5 sec break option is only enabled only if both DIN or DOUT are in 
    GPIO_PERIPHERAL mode (1) otherwise it is presumed that the UART is disabled
    and those pins are being used for other functions. 
* Implemented Encrypted APS leave command, Tx packet format is as follows: 
  + Api Tx Explicit Frame type = 0x11
  + Source End Point = 0xE6
  + Destination End Point = 0xE6
  + Cluster ID = 0x0023
  + Profile ID = 0xC105 
  + Tx option = 0x20
  + Payload = <Transaction sequence number: 1 byte+ <EUI64: 8 bytes>
  + The status for Encrypted APS leave command will be AT command response 
    (0x88) frame type. 

### Fixes:
* Router/End devices will only send I/O sample data packet if joined to a valid
  network. 
* Fixed Self-Address packet failure when sending fragmented packets.
        
### Application Notes:
1. If you change from ZB to SE firmware on an S2C, you have to do an ATRE. 
   Otherwise, you can get the XBee into a state where it always report an ATAI 
   value of 0xA8.
2. A sleepy device with I/O sampling enabled will wait for the APS ACK before 
   going to sleep. This will force the sleepy device to stay awake until getting
   the ACK or the ACK timeout has elasped. The I/O sampling ACK requirement can
   be disable by setting ATDO option bit5 "Disable ACK for I/O Sampling". 


<pre>
XBee-Ember Release: v4x24
EmberZNet  Release: v4.2.0 stack
Based on 4x23 and 5123 
Build Date Feb 26, 2013
</pre>

### New features:
  None

### Fixes:
* Updated MXI ATDO option to disable ACK for both sleep and router 
  devices.
* Router/End devices will only send I/O sample data packet if joined
  to a valid network. 


<pre>
XBee-Ember Release: v4x23
EmberZNet  Release: v4.2.0 stack
Based on 4x22 and 5123 
Build Date Feb 5, 2013
</pre>

### New features:
None

### Fixes:
* Fixed sleepy device timeout issue when sleep period is set greater
  than 6 mins.

<pre>
XBee-Ember Release: v4x22
EmberZNet  Release: v4.2.0 stack
Based on 4x21 and 5123 
Build Date Jan 25, 2013
</pre>

### New features:
  None

### Fixes:
* Fixed ATAS network scan lockup issue when using ATII command.

<pre>
XBee-Ember Release: v4x21
EmberZNet  Release: v4.2.0 stack
Based on 4x20 and 5123 
Build Date Jan 22, 2013
</pre>

### New features:
* Added HIGH_RAM_CONCENTRATOR option via ATDO, host must send AR=0 
  to update routes.
* Added NO_ACK_IO_SAMPLING option via ATDO for sleepy devices. The 
  default operation the sleepy device will remain awake until 
  getting APS ACK or APS ACK retry timeout. 
  ATDO   Bit0 - Enable Temperature Compensation Updates on S2B. 
         Bit1 - Reserved for Smart Energy devices.
         Bit2 - 0/1 = First or Best Response. 
         Bit3 - Disable NULL Transport Key (Coordinator Only). 
         Bit4 - Disable Tx Packet Extended Timeout. 
         Bit5 - Disable ACK for End Device I/O Sampling.  (New)
         Bit6 - Enable High Ram Concentrator.             (new)

* Added the ability to do OTA recovery of a target which has 
  reverted to default channel 13 due to some kind of OTA 
  interruption during a normal OTA update. Here's the sequence 
  required once target has reverted to default channel 13:
  - Send AT%U <Target EUI>
    + Sends broadcast message to target to start OTA sequence.
  - Do normal OTA sequence
    + Send FW update packets to local/remote OTA cluster 
  - Send AT%U <0>
    + Send terminate OTA recovery command when completed with OTA update. 

Note: If the coordinator is the source and updater send AT%U command
      as a local AT command, otherwise send as a remote AT command.

### Fixes:
* Updated MXI file with NW and JV description.
* The ATAS command now sends API zero length payload modem status 
  message when AS command is completed. For transparent mode you'll
  get a <CR> after AS command is completed.  
* Fixed NR command not resetting radio properly.
* Fixed Watchdog resets and flash verify write failures due to:
  - bad handling of rxbuffer overflows;
  - bad command processing when bailouts occur;
  - out of bounds write when processing a NI command response;
* Fixed I/O sampling issue where getting duplicate samples if ST is set very low
  and SN set above 1.
* Fixed serial loopback issue where there's no loopback response after a device
  initially joins the network. 
* Fixed issue, if P3 or P4 are set to anything other than default, the module 
  will lock up upon receiving any remote AT command.  
* Fixed issue to always remain in API non-escaped mode when using SPI. 
* JV/JN response not being random between 2-8 seconds due to initial random
  number seed being static.
* When AT Coordinator sends to unknown address it will intermittently lockup 
  when trying to enter command mode. 
* End device retry count is incorrect when initially sending packet to unknown
  address after waking up.
* End device taking excessive time to send fragmented packets. 
* Fixed serial Break issue where the parity not being set to default value when
  break detected.
* When sending a TX request to yourself, the status frame indicated that the
  packet was successfully received (0x00) but should show that it is self 
  addressed (0x23)

<pre>
XBee-Ember Release: v4x20
EmberZNet  Release: v4.2.0 stack
Based on 4x1E and 5123 
Build Date Oct 26, 2012
</pre>

### New features:
* ATAS command is a previously-undocumented command to perform an "Active Scan"
  for networks by a coordinator or router.  
  - This is the first release of the S2C firmware with a working ATAS command.  
  - Past versions of the S2B firmware used a different format for the response; 
  - an upcoming S2B ZB release will have a compatible response format.
* The host receives multiple AT Response frames, with data in the following 
  format:
<pre>
typedef struct {
       uint8_t      as_type;
       uint8_t      channel;
       uint16_t     pan_be;
       uint8_t      extended_pan_be[8];
       uint8_t      allow_join;
       uint8_t      stack_profile;
       uint8_t      lqi;
       int8_t       rssi;
} xbee_atas_response_t;
</pre>

### FIXES:
* Updated MXI file with NW and JV description.

### ENHANCEMENTS

* Added Backup/Restore feature from web page including XBee parameters
  - Note: that this is only on factory units; firmware 
          update procedure will not upgrade XBee firmware.

* Added dropdown box to web page for system logs Separated log files to report 
  on specific component such as smart energy or python scripts
* Various security enhancements
* Added a firewall on Cellular network interface
* Added time server log messages to eventlog.txt 
* Processor temperature not available via Device Cloud
* Added python support to disable and enable cellular data
* Added support to enter static GPS information via Web UI or Device Cloud
* Disable TCP timestamps and removed all but one time server entry to reduce 
  traffic on Cellular networks

### BUG FIXES

* Fixed an issue where gateway could stop logging 
* Fixed an issue where timestamps on log files were incorrect
* Fixed an issue where configuring python autostart scripts did not work 
  correctly
* Fixed problem where timezone in digi.log was incorrect after a firmware update
* Fixed an issue where gateway was ignoring Device Cloud keepalive settings
* Fixed an issue where overwriting an existing file with a smaller file using 
  the Web UI would leave invalid data at end of new file.
* Fixed an issue with configuring network interface. If device cloud was 
  disabled, configuring network via Web UI would inadvertently enable Device 
  Cloud connectivity.
* Fixed issue where gateway could become unresponsive.  (Caused by file system 
  becoming full)

### KNOWN ISSUES
  None.

### DOCUMENTATION ERRATA
  None.

### ADDITIONAL INFORMATION
  None.

Firmware Version 3.1.0.6
-------------------------

### HIGHLIGHTED PRODUCT CHANGES
* Initial Release

### ENHANCEMENTS
  None.   

### BUG FIXES
  None.

### KNOWN ISSUES
  None.

### DOCUMENTATION ERRATA
  None.

### ADDITIONAL INFORMATION
  None.

### HISTORY
  None
