Davidc502- wrt1200ac wrt1900acx wrt3200acm wrt32x builds

I found some additional help in another openwrt thread here Script to list installed packages? (for simplifying sysupgrade) ..all kudos to these guys.
For completeness in case it can help other people operating same as me below is procedure i'm using. Thanks goes to davidc502 and hnyman for their suggestions and help.
Assumptions:

  1. partitionX still contains your original linksys firmware, which you want to keep.
  2. partitionY contains your LEDE which you want to update whilst still retaining partitionX with the linksys firmware.
  3. no hardware chages; e.g. removing/adding USB devices during 'upgrade'.
  4. config files outside normal /etc/config will have to be saved separately.
    We're going to re-install LEDE on partitionY and restore saved config (from step5 below) when complete and also restore all user installed packages.
    Procedure:
  5. Take backup of your current configuration file so you can restore it later once upgrade/install is complete.
    From LuCi GUI go to System---Backup/Flash Firmware and select "Generate Archive". This will take a snapshot of all of your configurations and save the file (xxxxxxx.tar.gz format) to the device you're running your Luci session from; on my windows laptop it simply saves it to my default download folder.
  6. SSH into router and type:
    echo -n "opkg update;opkg install ";install_time=$(opkg status kernel|awk '$1=="Installed-Time:" {print $2}');opkg status|awk '$1=="Package:" {package=$2} $1=="Status:" {user_inst=/ user/ && / installed/} $1=="Installed-Time:" && $2!='$install_time' && user_inst {print package}'|sort|sed ':a;N;$!ba;s/\n/ /g

This will output a command to execute once new LEDE firmware is in place.

Here is what my output looks like on my router after executing above command. Note, yours will look different as the output depends on what packages/libse etc.. you (the user) installed after the last time you installed LEDE.

opkg install collectd-mod-df collectd-mod-disk diffutils dumpe2fs e2fsprogs kmod-fs-exfat kmod-fs-f2fs kmod-lp kmod-usb-printer libblkid libcomerr libext2fs libss libusb-1.0 luci-app-nlbwmon luci-app-p910nd luci-theme-material-old luci-theme-openwrt nlbwmon openssh-keygen openssh-server p910nd rsync tune2fs usbutils

You can now save this output to a file somewhere where it will not be overwritten; i.e. on your PC or usb attached drive (e.g. /mnt/sda1). All you need here is the ability to cut and paste this output into SSH session once new LEDE firmware is in place.

  1. from davidc502 faqs ( https://davidc502sis.dynamic-dns.net/faq/ ), SSH and type 'fw_printenv boot_part'.
    My output shown below:

    root@WRT32xx:~# fw_printenv boot_part
    boot_part=1

  2. From this i know i am currently active on partition1 so to keep partition2 (the partition containing the original linksys firmware) intact i will switch to and boot from partition2 by typing 'fw_setenv boot_part 2'.This will reboot router to partition2 containing the linksys firmware.

  3. From the linksys GUI install the .img LEDE firmware you want to 'upgrade' to. This will overwrite current partition1 LEDE firmware with a fresh factory install.

  4. Router will now install the .img firmware and reboot into new this LEDE firwmare.

  5. SSH into newly installed LEDE firmware and type 'opkg update' .

  6. via SSH type output of step6. This will install your previously user installed packages. Note: if any of these packages are not in the installed LEDE repository you have to find the right repository and install it from there.

13.Log into Luci and via System---Backup/Flash Firmware select 'Restore File' to upload previously archived config backup which was taken at step5 above. Check all looks as expected/needed.
14. Reboot router, if not automatically rebooted.
If all went well everything will be the same as when you started but with the 'newer' firmware version you updated to.
I do not recommend doing this if kernel versions change or across major version; e.g. v15.01 to v17.01 as packages/libs may be dependent on specific versions, it should however be fine across weekly snapshot updates. Have fun !