Firmware

Firmware versions and their new features and updates are listed.

FW 2.400

In Firmware version 2.400 and newer, MQTT can always be on so that in Direct Device-MQTT Broker Communication configuration, the device stays connected to the MQTT Broker between MQTT sessions. Consequently, connection time and cellular data usage are minimal. 

mqtt_tx_mode 

  • MTM_ PERIODIC - The device is connected to the MQTT Broker only for MQTT sessions. The device disconnects when data transmission ends. 

  • MTM_ ALWAYS_ON - The device stays connected to the MQTT Broker even between MQTT sessions. 

  • MTM_ ALWAYS_ON_WHILE_ON_EXT_POWER - MQTT is always on while an external power supply exists. If power is lost, the MQTT session is closed; the session will reopen and remain open after power resumes. 

mqtt_home_interval_minutes - The time interval, in minutes, for the device to connect to the MQTT Broker if you defined mqtt_tx_mode parameter to be either value: 

  • MTM_PERIODIC 

  • MTM_ALWAYS_ON_WITH_EXT_POWER, but there is no external power 

mqtt_always_on_home_interval_minutes - The time interval, in minutes, for the device to connect to the MQTT Broker if you define the mqtt_tx_mode parameter to be MTM_ ALWAYS_ON or  MTM_ ALWAYS_ON_WHILE_ON_EXT_POWER (and external power exists).  

mqtt_always_on_ping_interval_minutes – Defines the frequency, in minutes, to ping the server. Data must be sent periodically  to the server in order to keep the MQTT session open. In this case, the data is a ping.  

Note the following items when MQTT is not PERIODIC: 

  • Modem is always on and consuming battery 

  • MQTT session is open, so that connection time and cellular data usage are minimal 

  • During an HTTP session, the MQTT session is closed but will reopen on next MQTT session  

  • A ping is sent from the device to the MQTT Broker in order to keep the MQTT session open 

  • With every HTTP session, MQTT transmission is also sent 

  • If the previous MQTT connection failed, the next transmission will also send HTTP 

  • HTTP is sent when an event is triggered (a defined threshold is crossed) 

  

In FW 2.400 and newer, note the following changes: 

  • home_interval_calibration_mode_minutes - The HTTP interval during calibration mode (when the magnetic key was swiped over the device logo).   

  • gsm_http_enable = 0 disables HTTP; 1 enables HTTP 

  • gsm_mqtt_enabled = 0 disables MQTT; 1 enables MQTT 

  • MQTT transmission, unless disabled, occurs with every HTTP transmission 

 

HTTP transmission is done in the following cases: 

  • HTTP interval (home_interval_calibration_mode_minutes  or home_interval_minutes) has passed 

  • The previous transmission failed, so the transmission retries 

  • An event file was created when an event occurred (some threshold was exceeded) or, if defined, when the power source switched from internal to external or vice-versa