   ###*
   @inheritdoc Controller#activate
   ###
-  activate: (initialPage = "catalog") ->
+  activate: (initialPage) ->
     $ = @$
+    initialPage or= (@_lastTabPage or "catalog")
     return super(
     ).then(=>
       # Setup jquery-scrollTabs (only once)

            return spin.html("#{msg}\n#{url}") if url?
            return spin.html(I18n.getMessage("Saving_firmware"))
        ).catch((error) =>
          App.error(error)
          notify.show(
            message: I18n.getMessage("Firmware_download_failed")
          ) # Do not wait until notification closing
          return
        ).finally(=>
          spin.hide()
        ) # return firmRevision.download().then()...

  @inheritdoc Controller#deactivate
  ###
  deactivate: ->
    return Promise.resolve(
    ).then(=>
      return false if @_board?
      App.popupWarning(
        I18n.getMessage("Board_is_not_selected")
      )
      return true # Do not wait until notification closing
    ).then((skip) =>
      return true if skip
      return @_board.loadFirmware().catch(=> return)
    ).then((firmware) =>
      return true if firmware == true
      return false if firmware?
      App.popupWarning(
        I18n.getMessage("Firmware_is_not_selected")
      )
      return true # Do not wait until notification closing
    ).then((skip) =>
      return true if skip
      return @_board.loadFirmRevision().catch(=> return)
    ).then((firmRevision) =>
      return true if firmRevision == true
      return firmRevision if firmRevision?
      App.popupWarning(
        I18n.getMessage("Firmware_revision_is_not_selected")
      )
      return true # Do not wait until notification closing
    ).then((firmRevision) =>
      return true if firmRevision == true
      return firmRevision.checkCacheAvailability(
