diff --git a/Makefile b/Makefile
index ee53799a99c73817f667ef4953b17296ee832cbe..73f47068f27d7399d6fa0bb7b60249f6aa9217ac 100755
--- a/Makefile
+++ b/Makefile
@@ -31,10 +31,12 @@ define Build/Configure
 endef
 
 define Build/Compile
+	$(call GluonSrcDiet,./luasrc,$(PKG_BUILD_DIR)/luadest/)
 endef
 
 define Package/gluon-ssid-changer/install
 	$(CP) ./files/* $(1)/
+	$(CP) $(PKG_BUILD_DIR)/luadest/* $(1)/
 	./gluonShellDiet.sh $(1)/lib/gluon/ssid-changer/ssid-changer.sh
 endef
 
diff --git a/files/etc/config/ssid-changer b/files/etc/config/ssid-changer
new file mode 100644
index 0000000000000000000000000000000000000000..1ad4a1e5cd78b2aeb47384e326321913eafe39c7
--- /dev/null
+++ b/files/etc/config/ssid-changer
@@ -0,0 +1 @@
+config main 'settings'
diff --git a/luasrc/lib/gluon/upgrade/500-ssid-changer b/luasrc/lib/gluon/upgrade/500-ssid-changer
new file mode 100644
index 0000000000000000000000000000000000000000..02d21883b87b366581595512b9349d5ea8516517
--- /dev/null
+++ b/luasrc/lib/gluon/upgrade/500-ssid-changer
@@ -0,0 +1,23 @@
+#!/usr/bin/lua
+
+local site = require 'gluon.site_config'
+
+local legacy_uci = require 'luci.model.uci'
+local uci = legacy_uci.cursor()
+
+-- LEDE: local uci = require('simple-uci').cursor()
+
+if not uci:get('ssid-changer', 'settings', 'enabled') then
+uci:section('ssid-changer', 'main', 'settings', {
+  enabled           = '1',
+  switch_timeframe  = site.switch_timeframe or '1',
+  first             = site.first or '5',
+  prefix            = site.prefix or 'FF_OFFLINE_',
+  suffix            = site.suffix or 'nodename',
+  tq_limit_enabled  = site.tq_limit_enabled or '0',
+  tq_limit_max      = site.tq_limit_max or '55',
+  tq_limit_min      = site.tq_limit_min or '45',
+})
+end
+
+uci:save('ssid-changer')